Role Summary:
We are seeking an experienced and highly skilled Senior Software Engineer / Lead Software Engineer with 612 years of professional experience to join our development team. In this role, you will lead the design, development, and maintenance of complex software applications, contribute to system architecture decisions, and mentor junior engineers.
Key Responsibilities:
- Lead the design, development, and implementation of complex software applications and features.
- Architect scalable, maintainable, and high-performance systems in line with business requirements.
- Review and optimize code for quality, efficiency, and maintainability.
- Conduct and lead code reviews, establish coding standards, and promote best practices within the team.
- Perform system integration, unit testing, and debugging to ensure robustness and reliability.
- Troubleshoot and resolve complex production issues, ensuring minimal downtime and impact.
- Integrate third-party APIs, microservices, and enterprise-level services.
- Document technical architecture, design patterns, workflows, and development processes.
- Mentor and guide junior and mid-level developers, fostering a culture of learning and collaboration.
- Collaborate with product managers, QA, DevOps, and stakeholders to deliver high-quality solutions on schedule.
- Drive the adoption of CI/CD, DevOps practices, and automated testing within the team.
- Ensure adherence to software development lifecycle (SDLC) and Agile methodologies.
- Stay updated with emerging technologies, frameworks, and industry trends to improve product and team performance.
Required Skills & Qualifications:
- Bachelor's or Master's degree in Computer Science, Information Technology, or a related field.
- Strong programming skills in Java, Python, C++, or equivalent languages.
- Deep understanding of object-oriented programming (OOP), design patterns, and software architecture principles.
- Experience with relational and NoSQL databases (MySQL, PostgreSQL, MongoDB).
- Hands-on experience with version control systems such as Git.
- Solid understanding of SDLC, Agile, and Scrum methodologies.
- Expertise in debugging, performance optimization, and problem-solving.
- Proven ability to lead technical discussions, mentor team members, and influence architectural decisions.
- Strong written and verbal communication skills, with the ability to explain complex technical concepts to non-technical stakeholders.
Preferred Qualifications (Optional):
- Experience with web technologies and front-end frameworks (HTML, CSS, JavaScript, Angular, React).
- Knowledge of microservices architecture and distributed systems.
- Hands-on experience with cloud platforms (AWS, Azure, GCP) and containerization (Docker, Kubernetes).
- Familiarity with CI/CD pipelines, DevOps practices, and automated testing frameworks.
Experience:
- 612 years of professional software development experience, including leadership or senior technical roles in fast-paced, collaborative environments.