About the Role
A leading global technology-driven company is looking to hire a Junior Software Engineer to join one of its cross-functional development squads. This is a remote opportunity, ideal for South African candidates who are in the early stages of their software engineering careers and are looking to grow within a collaborative, quality-driven, and fast-moving environment.
The successful candidate will work on greenfield products built with cloud-native, modern technologies. Under the guidance of experienced engineers, they will contribute to both front-end and back-end development, gaining hands-on experience in real-world software delivery. From refining user stories and writing automated tests to participating in code reviews and deploying working software, this role provides an excellent foundation for becoming a well-rounded software engineer.
Engineers in this role will have access to mentorship, code reviews, and the opportunity to explore technologies such as AI tools, cloud infrastructure, Docker, and Kubernetes. This is more than just a coding job—it’s a launchpad for a meaningful engineering career.
Key Responsibilities
- Write clean, maintainable code in TypeScript for both web applications and backend services.
- Develop and maintain unit and integration tests to ensure code reliability.
- Collaborate with your squad to break down technical requirements and deliver features in small, frequent releases.
- Pair-program with experienced engineers and take on tasks that build your confidence and capability.
- Contribute to automated testing pipelines using GitHub Actions and other DevOps tools.
- Learn to deploy applications to AWS using Terraform, Docker, and Kubernetes.
- Participate in code reviews, retrospectives, and actively seek feedback to continuously improve your skills.
Requirements
Minimum Requirements (Non-negotiable):
- Up to 2 years of experience writing software in JavaScript or TypeScript.
- Basic understanding of web technologies.
- Interest in full-stack development using tools like React, Node.js, and GraphQL.
- Familiarity with cloud concepts, APIs, and container technologies (even through coursework or personal projects).
- Awareness of the importance of testing and a willingness to learn automated testing practices.
- Strong communication and teamwork skills.
- Self-motivated with a growth mindset and openness to feedback.
Preferred Qualifications:
- Degree or diploma in Computer Science, Information Technology, or a related field.
Personal Attributes
- Self-starter with strong problem-solving abilities.
- Curious and eager to learn, with a genuine interest in software development.
- Creative thinker who embraces innovation and new approaches.
- Strong collaborator and communicator who enjoys working in a team environment.
- Takes ownership of work and strives for quality and impact.
- Shows initiative and can work independently without constant supervision.
Interview Process
The hiring process is designed to be fair, transparent, and informative. It consists of the following stages:
- Screening Call – A short conversation with the recruitment team to learn more about the company and confirm role alignment.
- Initial Interview – A 30-minute conversation with an Engineering Manager to discuss your background and suitability for the role.
- Technical Assessment – A take-home coding test to evaluate your problem-solving and development skills.
- Final Interview – A 1-hour session with team members, including senior engineers and managers, where you’ll discuss your test, technical approach, and meet your potential colleagues.
How to Apply