Takealot.com , South Africa’s leading online retailer, is looking for a highly talented Senior Software Engineer (Python) to join our team. We are a young, dynamic, hyper-growth company looking for smart, creative, hard-working people with integrity to join us!
Think you’ve been challenged before? Think again!
- Scale : Over 4 million happy shoppers shop online on takealot.com. Show them what you can do.
- Learn : We work with the best of the best. Code alongside industry leaders and up-skill in record time.
- Grow : Expand your career in the fast-growing Takealot Group: takealot.com, and Mr D. We like to promote from within: Here’s your chance.
Who’s who in the tech space
This position reports to the respective team's manager.
Your mission, should you choose to accept it:
As a Software Engineer, you will be someone whose expertise directly translates into developing robust software in the e-commerce domain. You will have the opportunity to implement best practices to improve existing software and participate in the development of new features. While we don't promote after-hours work as part of the regular workday, we run a 24/7 business with the need to keep systems up and running. Software Engineers are expected to provide after-hours support on a rotational basis to resolve critical system issues if needed.
- Design and build solutions to assist our business users and improve customer experience
- Architect and design solutions with your team
- Develop code, making major improvements to non-functional areas
- Develop high-quality production code for work of high complexity and scale
- Utilize and improve functional and non-functional testing practices
- Champion, challenge, and iterate on best practices within engineering
- Design solutions for complex problems with difficult decision trade-offs, typically system or domain-wide
- Participate in and collaborate on architecture proposals across engineering
- Support alignment of architecture across the organisation
- Respond to and resolve bugs in production for systems in your division
- Respond to alerts and support incident response within your division
- Investigate and drive the resolution of issues that impact multiple teams
- Support, challenge existing, and define new engineering processes and directives
- Review and contribute fixes and content to internal documentation
- React to technology trends, identifying risks and opportunities for your division's technologies, systems, and domains
- Share knowledge through blog posts, tech talks, and workshops across engineering
- Contribute to discussions and decisions in the division
- Challenge others to always produce work of the highest quality
- REST and RPC API implementation and maintenance (using Python)
- Develop and maintain automation tests