We are seeking a talented and experienced Assistant/ Software Leadto join our team and take charge of developing innovative, high-quality software applications using Agile development methodologies. In this role, you will not only lead software development projects from design through deployment but also play a key role in mentoring junior engineers and fostering an Agile environment. You will collaborate closely with cross-functional teams to deliver software that meets both technical and business needs while promoting Agile best practices like iterative development, continuous improvement, and adaptability.
The ideal candidate will have strong technical skills, Agile experience, and a passion for building scalable, maintainable software solutions. You will be a key player in leading Agile ceremonies and guiding the development team to meet sprint goals, resolve blockers, and continuously improve the software delivery process.
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.
Quality Assurance and Continuous Improvement
- Ensure robust, scalable, and secure code by conducting code reviews and promoting a culture of quality.
- Drive continuous improvement in the development process, leveraging feedback, retrospectives, and lessons learned to enhance future project delivery.
Client Satisfaction and Post-Launch Support
- Ensure that the software meets or exceeds client expectations and quality standards upon delivery.
- Provide ongoing post-launch support, working with clients to address any issues or improvements post-deployment.
- Build long-term client relationships, identifying opportunities for further collaboration or future projects.
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.