Golang Developer

South Africa, South Africa

Job Description


Job SummaryGolang Developer Pretoria/Centurion - GautengENVIRONMENT:A Health Tech Solution Company based in Pretoria is currently looking for a Golang Developer for Developing and maintaining software products and solutions offered by the company.DUTIES:

  • Lead the application lifecycle (planning, design, development, deployment, ongoing maintenance), creating user stories and estimates, collaborating with cross-functional teams.
  • Continuously research, evaluate, and integrate new technologies to optimize development efficiency and application performance.
  • Plan and design well-structured, reusable application architecture.
  • Introduce and implement best practices to ensure high-quality, maintainable systems.
  • Participate in project planning by providing accurate estimates, contributing to requirement documentation, and assisting in work breakdown structures for the team.
  • Lead the collection and documentation of user requirements, user story creation, estimation, and work plan development, ensuring clear communication of requirements.
  • Effectively prioritize, and manage dependencies to ensure timely completion, and switch contexts effectively when the need arises.
  • Collaborate effectively with cross-functional teams to solve problems, make recommendations, and discuss best practices.
  • Proactively identify and mitigate cross-functional and user facing risks, adapting as needed.
  • Track task and project progress within JIRA.
  • Lead and participate in software development adhering to project plans, deadlines, and coding standards.
  • Develop and maintain high-quality, maintainable systems using efficient and reusable code according to best practices.
  • Use version control effectively and according to best practices, as well as backing up other work according to company standards.
  • Prepare and maintain comprehensive testing environments with clear examples and instructions.
  • Conduct initial testing and assist in developing testing plans to ensure applications meet specifications.
  • Implement and maintain automated tests and component libraries and contribute to team best practices.
  • Analyse systems to identify root causes of issues across systems, develop workarounds, and implement permanent fixes.
  • Deliver thoroughly tested, performance benchmarked, and functionally-compliant work, ensuring readiness for deployment.
  • Deploy changes to the production environment following established procedures and supervise more junior team members.
  • Oversee, implement and maintain all DevOps processes, including CI/CD pipelines and Infrastructure as Code as applicable to the team.
  • Take ownership of maintaining up to date and accurate code and system level documentation .
  • Collaborate with members of other teams to ensure timely integration between systems.
  • Provide clear, timely, and insightful updates on project status, progress, risks, and potential problems to the line manager and stakeholders.
  • Prepare reports, manuals, and other documentation related to software status, operation, and maintenance.
  • Maintain accurate system and product change logs, release notes and notifications to other teams, according to company standards and team practices.
  • Offer expert insights and feedback on queries regarding relevant projects.
  • Collaborate effectively with team members and stakeholders, by being available on appropriate communication channels with timeous, well-articulated responses.
  • Take ownership of projects and products, driving successful completion.
  • Actively participate in peer code reviews, provide constructive feedback, discuss best practices, and contribute innovative ideas to projects.
  • Collaborate with the team, and interface with other teams, to solve problems and ensure successful project and product delivery.
  • Lead and mentor the development team, fostering a collaborative, innovative, and growth-oriented environment through coaching, code reviews, knowledge sharing, and promoting best practices.
  • Identify opportunities for team growth and encourage skill development.
  • Contribute to the recruitment process by providing technical expertise.
  • Lead the development of high-quality products that meet specifications, user requirements, best practices, deadlines, and regulatory compliance (e.g., FDA, CE, ISO).
  • Apply knowledge of the Quality Management System guidelines and its relevant processes to ensure quality and SOC2 compliance in medical device- and other software.
  • Ensure all testing adheres to defined specifications and contributes to continuous improvement of existing applications.
  • Lead efforts to safeguard information and data in accordance with company policies.
  • Keep all supporting documents up to date.
  • Assist the team lead in keeping processes relevant and up to date.
  • Design and implement new database structures and content, ensuring optimal performance and scalability.
  • Lead the maintenance of database integrity and efficiency through ongoing optimisation strategies.
  • Lead data restoration efforts when required, minimizing downtime and data loss.
  • Perform advanced and higher risk DevOps and Infrastructure as Code changes responsibly when the need arises.
REQUIREMENTS:Minimum education (essential):
  • Bachelors degree in Computer Science or Engineering (or similar)
  • Minimum applicable experience (years): 5 years working experience
  • Required nature of experience: Software development
Skills and Knowledge (essential):
  • API's
  • HTTP
  • Microservices
  • CORS
  • Authentication
  • Logging
  • RESTful
  • Databases
  • Analysing query performance
  • Writing queries
  • Designing dB schemas
  • Creating indexes
  • SQL
  • Development
  • Multiprocessing (threading/synchronization/locks)
  • Git
  • Programming
  • CI/CD
  • Docker
  • Golang
  • Queues
  • Debugging
  • Debug across multiple interconnected systems
  • Distributed tracing
  • Debug using application logs
  • Web browser console
  • Postman
  • Testing
  • Performance Testing
  • Mocking
  • Integration Testing
  • Unit testing
  • Cloud
  • Lambda
  • CloudFront
  • ECS
  • Backups
  • EC2
  • S3
  • AWS/ Azure
  • Networking
  • DNS
  • Networking - IPs, ports, subnets
  • Other
  • Experience with JavaScript / TypeScript
  • HTML
Skills and Knowledge (desirable):
  • Databases
  • NoSQL
  • Essential Competencies:
  • Examining Information
  • Developing Expertise
  • Making Decisions
  • Showing Composure
  • Embracing Change
  • Meeting Timescales
  • Upholding Standards
  • Taking Action
  • Important Competencies:
  • Providing Insights
  • Interpreting Data
  • Adopting Practical Approaches
  • Exploring Possibilities
  • Thinking Positively
  • Conveying Self-Confidence
  • Inviting Feedback
  • Impressing People
  • Convincing People
  • Challenging Ideas
  • Managing Tasks
Following ProceduresApply for this JobDatafinRecruiter

Job Mail

Beware of fraud agents! do not pay money to get a job

MNCJobs.co.za will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD1371394
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    South Africa, South Africa
  • Education
    Not mentioned