Menu Close

Senior Back End Developer (Golang) (PTA)

IT – Software Development
Pretoria/Centurion – Gauteng

A cutting-edge HealthTech company in Pretoria seeks the coding expertise of a Senior Back End Developer to join help develop and maintain software products and solutions. The successful candidate must possess a Bachelor’s Degree in Computer Science with 5yrs+ relevant working experience including being able to design and build data stores with complex relationships (relational or NoSQL) and distributed systems, back-end APIs, or Microservices. Your tech stack should also include Golang, Jenkins, TDD and Object-Oriented design.
Analysis and Planning –
  • Multitask on a range of products and tasks simultaneously, defining priorities and ensuring efficiency.
  • Define and communicate problem, goal and acceptance criteria.
  • Communicate and collaborate with development, business analyst and design teams to solve problems, make
  • recommendations and discuss best programming practices.
  • Conduct research on possible solutions and techniques.
  • Prepare a work breakdown structure.
  • Determine and account for dependencies among deliverables, products and systems.
  • Accurately estimate duration of deliverables
  • Document analysis and planning process.
Programming –
  • Follow project plan to develop software.
  • Analyse systems for root cause, impact, workarounds and permanent fixes.
  • Communicate effectively and efficiently with line manager on progress, priorities and workload
  • Work with stakeholders to achieve appropriate solutions.
  • Meet development timelines in projects and deliverables
  • Identify and mitigate risks, making appropriate mid-course corrections as required
  • Adhere to agreed upon standards for code.
  • Generate and maintain effective and efficient high quality, reusable code.
  • Use effective and efficient components & techniques to implement solutions.
  • Ensure all work is versioned and backed up according to company standards.
  • Meet set deliverable deadlines.
Testing and implementation –
  • Ensure that all work is tested, benchmarked and fulfills functional requirements submitting for approval, review or
  • deployment.
  • Prepare test environment, examples and instructions.
  • Participate enthusiastically in peer code reviews.
  • Deploy changes to live environment.
  • Maintain system and product change logs and release notes according to company standards.
  • Reporting and Communication 10%
  • Keep project documentation up to date and standard.
  • Provide timeous, efficient and effective feedback on project status.
  • Proactively keep stakeholders updated on progress, risks and problems.
  • Assist in the collection and documentation of user’s requirements, development of user stories, estimates and
  • work plans.
  • Prepare reports, manuals and other documentation on the status, operation and maintenance of software.
  • Provide insight and feedback on queries regarding relevant projects.
Database Administration –
  • Perform maintenance to ensure data integrity and efficiency.
  • Deploy new structure and content.
  • Restore data when required.
Compliance –
  • Comply to ISO, CE, FDA (and other) standards and requirements as is applicable to assigned products.
  • Safeguard confidential information.
  • Maintain backups and backup systems.
  • Bachelor’s Degree in Computer Science or Engineering (or similar).
  • MSc/PhD in computer science or other technical discipline (desirable).
  • 5+ Years relevant Software Engineering work experience.
  • Design and build data stores with complex relationships (relational or NoSQL).
  • Built/Design distributed systems, back-end APIs, or Microservices.
  • CS fundamentals in Object-Oriented design, data structures, algorithm design and complexity analysis.
  • Experience in Golang.
  • Experience with continuous deployment technologies (Jenkins). 
  • Familiarity with (TDD) unit testing, performance, load, or end-to-end integration tests.