Responsibilities
Client-Facing Leadership
- Act as the primary technical point of contact for clients, collaborating closely with client stakeholders to understand their requirements, challenges, and business goals.
- Manage client relationships and expectations, ensuring that technical solutions align with business objectives and project timelines.
- Provide regular updates to clients on project status, deliverables, and potential risks, maintaining transparency and fostering trust.
Technical Leadership
- Lead the design, architecture, and development of software solutions tailored to client needs, ensuring that solutions are scalable, secure, and maintainable.
- Oversee the implementation of best practices in software development, including code quality, performance, and security.
- Provide hands-on development leadership, contributing to key software components and resolving complex technical issues.
Agile Project Delivery
- Lead Agile ceremonies (sprint planning, daily standups, retrospectives, etc.), ensuring that the development team is focused and aligned with client priorities.
- Collaborate with product owners, business analysts, and other stakeholders to define and refine requirements, breaking them down into actionable user stories.
- Ensure timely delivery of features and functionality, managing project scope and mitigating risks.
Team Collaboration and Mentorship
- Lead and mentor a team of developers, fostering a collaborative and high-performance team environment.
- Provide technical guidance, coaching, and support to team members, ensuring adherence to coding standards and best practices.
- Promote knowledge-sharing and continuous learning within the team, encouraging the adoption of new technologies and development approaches.
Requirements
- 5+ years of professional software development experience, with at least 2 years in a senior or lead role.
- Demonstrated experience leading and delivering software solutions for clients, including gathering requirements, managing client expectations, and ensuring successful delivery.
- Experience in designing and implementing scalable and maintainable systems, including microservices, RESTful APIs, and cloud architectures.
- Proven track record of successfully delivering IT projects within deadlines, budgets, and scope, while ensuring client satisfaction.
- Proficiency in at least one of the following languages: Java, Python, JavaScript, C#, Go, Ruby, or PHP.
- Experience with modern web frameworks (e.g., React, Angular, Spring Boot, Django, Node.js) and/or mobile development frameworks (e.g., React Native, Flutter).
- Expertise in both relational databases (e.g., MySQL, PostgreSQL) and NoSQL databases (e.g., MongoDB, Cassandra).
- Familiarity with Git and CI/CD tools such as Jenkins, GitLab CI, CircleCI, or similar.
- Experience leading Agile teams using Scrum, Kanban, or other frameworks, with a strong understanding of Agile project management tools (e.g., Jira, Trello).
- Experience with automated testing frameworks (e.g., JUnit, Mocha, Jest) and a strong understanding of software quality assurance practices.
- Familiarity with containerization tools like Docker and Kubernetes for deploying and scaling applications.