Job Summary:The Software Engineering Team Leader will oversee the software internal development team, guiding and mentoring team members while managing software development projects from inception through to delivery. This role combines leadership responsibilities with hands-on software development, ensuring high-quality, scalable, and maintainable code is produced and that projects meet their deadlines and budget constraints.
Key Responsibilities: Leadership and Management:
- Lead, mentor, and manage a team of software engineers.
- Foster a positive, collaborative, and productive team environment.
- Conduct regular one-on-one meetings, performance reviews, and career development sessions.
- Define team goals, strategy, and metrics to measure success.
Project Management:
- Plan, execute, and oversee software engineering projects.
- Ensure projects are completed on time, within scope, and within budget.
- Coordinate with other departments and stakeholders to gather requirements and define project scope.
- Monitor project progress, identify potential risks, and implement mitigation strategies.
Technical Oversight:
- Provide technical guidance and expertise in software design and development.
- Review code to ensure it meets quality standards, follows best practices, and aligns with project requirements.
- Stay updated with the latest industry trends, technologies, and best practices.
- Drive continuous improvement in code quality, development processes, and team efficiency.
Collaboration and Communication:
- Collaborate with other IT teams and other stakeholders to deliver high-quality software products.
- Communicate effectively with team members, stakeholders, and senior management.
- Act as a liaison between the software development team and other departments.
Development:
- Contribute to software development tasks, including coding, debugging, and testing.
- Participate in architecture and design discussions and decisions.
- Ensure the software developed is scalable, robust, and secure.
Qualifications:Education:
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Experience:
- 5+ years of experience in software development.
- 2+ years of experience in a leadership or team lead role.
- Proven track record of managing and delivering successful software projects.
Technical Skills:
- Proficiency in programming languages, e.g., C# and React platform ..etc
- Experience with software development methodologies (Agile, Scrum, etc.).
- Knowledge of software architecture and design patterns.
- Familiarity with DevOps practices and tools.
- Soft Skills:
- Strong leadership and team management skills.
- Excellent problem-solving and decision-making abilities.
- Effective communication and interpersonal skills.
- Ability to work under pressure and meet deadlines.