Senior Backend Software Engineer (Python/Django)
Senior backend engineer designing, building, and deploying scalable Python/Django services and REST APIs for a data analytics and AI solutions firm, fully remote. Day-to-day centers on Django backend development, PostgreSQL schema/query optimization, third-party integrations, testing, and architectural decisions.
- Compensation
- Not disclosed
- Location
- Centurion, South Africa
- Work setup
- Remote
- Seniority
- Senior
- Employment
- Not specified
- Experience
- 5+ years
- Category
- Backend
- Posted
Skills
Must have
- Bachelor's degree in Computer Science, Software Engineering, or related field, or equivalent work experience
- Minimum 5 years of professional backend software development experience
- Strong proficiency in Python and experience with the Django framework
- Extensive experience with relational databases such as PostgreSQL, MySQL, or similar
- Proven experience designing and developing RESTful APIs
- Familiarity with asynchronous programming and task queues (e.g., Celery)
- Understanding of caching mechanisms (e.g., Redis, Memcached)
- Experience with version control systems, specifically Git
- Excellent problem-solving, analytical, and debugging skills
- Strong communication and collaboration skills for remote teamwork
- Ability to work independently and manage time effectively in a remote setting
Nice to have
- Knowledge of containerization technologies like Docker
- Experience with cloud platforms (AWS, Azure, GCP)
Full description
About the Role
Our client, a rapidly growing technology firm specializing in data analytics and AI solutions, is looking for a talented Senior Backend Software Engineer with expertise in Python and Django. This is a fully remote position, allowing you to contribute to impactful projects from the comfort of your home office. You will play a key role in designing, developing, and deploying sophisticated backend systems that power our client's innovative products. This role demands a deep understanding of server-side logic, database management, and API development. You will work in a highly collaborative environment, tackling complex challenges and contributing to the architectural decisions that shape our backend infrastructure. If you are passionate about building scalable and efficient applications using Python, this is an exceptional opportunity.
Key Responsibilities
- Design, develop, and maintain robust, scalable, and high-performance backend services and APIs using Python and Django.
- Build and optimize database schemas and queries, primarily utilizing PostgreSQL or similar relational databases.
- Implement security and data protection measures within the backend systems.
- Integrate with third-party services and APIs to extend application functionality.
- Write clean, maintainable, and well-documented code, adhering to industry best practices and coding standards.
- Collaborate with front-end developers, product managers, and other stakeholders to define and implement new features.
- Participate in code reviews, providing constructive feedback and ensuring code quality.
- Troubleshoot, debug, and resolve backend issues to ensure application stability and performance.
- Contribute to architectural discussions and technology choices for backend systems.
- Optimize applications for maximum speed, scalability, and reliability.
- Develop and maintain automated tests (unit, integration, and end-to-end).
- Stay current with emerging trends and technologies in backend development.
Requirements
- Bachelor's degree in Computer Science, Software Engineering, or a related field, or equivalent work experience.
- Minimum of 5 years of professional experience in backend software development.
- Strong proficiency in Python and experience with the Django framework.
- Extensive experience with relational databases such as PostgreSQL, MySQL, or similar.
- Proven experience in designing and developing RESTful APIs.
- Familiarity with asynchronous programming and task queues (e.g., Celery).
- Understanding of caching mechanisms (e.g., Redis, Memcached).
- Experience with version control systems, specifically Git.
- Knowledge of containerization technologies like Docker is a plus.