The Senior Software Engineer will take charge of designing, developing, and maintaining scalable software applications. This position requires collaboration with cross-functional teams to ensure high-quality code and to influence critical architectural decisions. Additionally, the engineer will assist in optimizing existing systems, promote performance enhancements, and uphold best practices throughout the development lifecycle.
Key Responsibilities:
- Create and implement applications using Django and Angular.
- Work closely with product and QA teams to ensure the delivery of high-quality features.
- Develop scalable backend services and RESTful APIs.
- Enhance performance, diagnose issues, and maintain application stability.
- Guide junior developers and engage in code reviews.
- Manage databases such as PostgreSQL and MongoDB.
- Integrate and oversee messaging systems including Kafka and RabbitMQ.
- Employ the ELK stack and Redis for monitoring, caching, and log analysis.
Required Skills:
- 4+ years of experience in Python with a strong focus on Django (backend) and Angular (frontend)
- Proven experience in full-stack web application development and REST API design
- In-depth knowledge of PostgreSQL and MongoDB
- Practical experience with Kafka, RabbitMQ, and Redis
- Familiarity with the ELK stack for logging and monitoring purposes
- Robust understanding of OOP principles, scalable system design, and performance enhancement
- Experience with Linux basics, debugging techniques, and code review practices
- Capability to mentor junior developers and collaborate effectively within agile teams