Job Openings Software Engineer (API Focussed)

About the job Software Engineer (API Focussed)

Software Engineer 

Contract duration: 12 Months

Location: Midrand

Role purpose:

  • The Senior Software Engineer is responsible for creating prototypes, designing and building modules and solutions in an iterative agile cycle, develop, maintain, and optimize the business outcome.
  • This role is responsible for estimating user and technical stories, designing and developing code, writing and executing unit and integration tests, and supporting testing of deliverables against user and technical story acceptance tests.
  • The incumbent is responsible for performing peer reviews, collaborating with architects and other developers to produce just enough design, and ensuring that enough technical documentation and training is provided for reference and operational support.
  • This role is responsible for providing software-related operations support, including managing level two and level three incident and problem management.

Key accountabilities and decision ownership

  • Estimate user and technical stories to help inform and prioritize backlog
  • Design modules according to user stories and technical stories
  • Develop solutions according to module designs and deploy using delivery pipeline
  • Develop and execute unit and integration tests; support testing against user and technical story acceptance tests
  • Suggest improvements to user stories
  • Manage technical debt as part of daily activities
  • Conduct peer reviews and maintain coding standards
  • Manage incidents as level two and level three support
  • Manage problems as level two and level three support

Core competencies, knowledge and experience

  • Agile and lean programming and development of software systems
  • Backlog item estimation
  • Unit, integration, smoke and static code analysis testing
  • Architectural element testing e.g. APIs
  • Automated testing and tools e.g. Selenium
  • Code reviewing & Development: Focused on Python scripting
  • Software incident and problem management
  • Expertise in multiple programming languages, such as SQL, XML, JSON, and Python, and paradigms such as object-oriented-, even-driven-, procedural-, functional-, and declarative programming
  • Continuous integration and continuous delivery methodologies and tools
  • DevOps culture, processes, and tools
  • Cloud-native architectures, including public cloud PaaS / IaaS, micro-services architectures, API
  • Strong problem solving skills and ability to learn new methods and processes
  • Strong relationship building, persuasion, and collaboration skills that drives internal-and cross-team constructive feedback and support
  • Strong communications skills, with the ability to distil difficult technical concepts into simple and actionable modules
  • Strong time-management skills, with the ability to juggle multiple balls, and comfortable working under pressure
  • Good understanding of the business capability / user journey, wider organizational goals, and desired product business outcomes

Must have technical / professional qualifications:

  • Bachelors Degree in Computer Science, Information Systems, Business Administration, or other related field
  • At least 5 years relevant experience of which a minimum of three years is in programming and/or systems analysis applying agile frameworks
  • Experience working with agile methodologies, such as Scrum & Kanban
  • Strong knowledge of software architecture principles
  • Experience working in cloud-native environments