Senior Software Engineer

Sage


Date: 1 day ago
City: Johannesburg, Gauteng
Contract type: Full time
Job Description

The Senior Software Engineer is responsible for building, enhancing and maintaining products and/or systems to enable Sage’s business plans and long-term objectives using the identified architecture. The Senior Software Engineer will assume ownership in the design, develop and delivery of high-quality products and/or systems and services that exceed customers’ or business partners’ expectations and will proactively share their own knowledge for specific technical solutions and business processes in their area of responsibility.

Location - 3 days per week in the Johannesburg office.

  • Possess and apply a broad knowledge of principles, practices, and procedures of software development to the completion of difficult assignments.
  • Successful develop, delivery maintain high quality software (requirements, design, code, documentation, etc.)
  • Work with product managers early on to shape product definition so that it can be built in flexible, extensible, and robust way
  • Automate tasks through appropriate tools and scripting
  • Evaluates progress and results and recommends major changes in procedures.
  • Partner effectively with all team members to deliver against commitments
  • Thought leader and deliver deep technical expertise for PD that drives colleague engagement, clarity and instils a culture of innovation and execution
  • Work cross-functionally with various Sage teams: product management, QA/XD/SD, various product lines, or business units to drive forward results
  • Passion for growing and applying technical skills in service to customers
  • Extensive experience with Agile Development, SCRUM, and/or Extreme Programming methodologies
  • Ensure all tasks are completed to the required quality standards.





Skills, know-how and experience: Must have: (5 or 6 Max)

  • Technology expert in their field.
  • Complex problem-solving ability. Innovative and creative thinking.
  • Operates with considerable latitude for unreviewed action or decision.
  • Ability to interpret and/or gather user requirements and translate these into technical specifications and/or code
  • Proficient with several relevant programming languages, frameworks and databases
  • Experienced implementing Architecture Best Practices and Patterns like Microservices, CQRS, Event Sourcing, Domain-Driven Design
  • Proven experience in using a TDD approach
  • Proven Track record of creating API-first products
  • MS Azure experience
  • A rapid ‘pick up and learn approach’ that will ensure valuable contribution to any team within days of joining the team
  • Very good in spoken and written English





Preferred:

  • Innovative and creative thinking
  • 5-10 years relevant professional experience, Payroll and/or financial domain expertise is an advantage Technical / professional qualifications (technical skills on at least intermediate, preferably expert level):
  • Computer Science (or related degree/qualification)
  • Real world application development experience
  • C#.Net
  • JavaScript client-side framework (ReactJS)
  • Microsoft SQL Server
  • REST API / Web API
  • Carbon REACT
  • API development & testing tools – e.g. Postman
Post a CV