Tech Stack
AWSAzureCloudDistributed SystemsDockerFlaskGoGoogle Cloud PlatformKubernetesMySQLPostgresPython
About the role
- Lead the design and development of complex software systems and architectures
- Collaborate with product managers, UX designers, and other engineers to create scalable and efficient software solutions
- Ensure high levels of performance, reliability and security in the developed systems
- Document software designs, architecture decisions, and implementation details
- Continuously evaluate new technologies and industry trends to improve development processes and product quality
- Write, test, and maintain high-quality, scalable, and robust code using Python/Golang
- Review and provide feedback on code written by other engineers
- Develop and manage APIs, integrations, and back-end systems
- Ensure rigorous testing in development and production to meet high-quality standards
- Write and maintain technical documentation
- Troubleshoot complex software issues, identify root causes, and propose effective solutions
- Mentor and guide junior engineers and lead technical discussions and decision-making
- Promote a culture of continuous improvement and collaboration
- Manage a small group of engineers and resolve technical challenges
- Work closely with cross-functional teams (product, analytics, AI/ML, design, operations)
- Participate in sprint planning, code reviews, and other Agile ceremonies
- Collaborate with QA engineers to design automated testing procedures and tools
Requirements
- Bachelor’s degree in Computer Science or related field
- 8 to 12 years software development experience, including experience in leading technical teams
- Proven track record of delivering large-scale software projects from start to finish
- Proficient in multiple programming languages such as Python, Golang
- Strong understanding of software development methodologies, design patterns, and best practices
- Experience with Web Frameworks like Flask, and related ecosystems
- Experience in system design, distributed systems, and scalable architectures
- Solid database skills (Postgres, MySQL etc) and data modeling experience
- Excellent analytical and debugging skills, able to troubleshoot and optimize complex software systems
- Experience with cloud computing platforms (AWS/ Azure/ GCP) and containerization (Docker, Kubernetes)
- Strong communication skills, with the ability to clearly explain technical concepts to non-technical stakeholders
- Experience in leading or mentoring engineering teams
- Ability to handle multiple priorities in a fast-paced, dynamic environment
- Should have apetite for managing a small group of engineers