Lead Software Developer
About the Role
Who we are:
Who you are:
The Lead Software Developer is primarily responsible for designing, building and maintaining efficient, reusable, reliable code to develop high throughput, performance critical, scalable applications. Part of this role involves collaborating and building relationships with other software developers, engineers, and internal technical teams in a mentorship role, and contributing towards the development of the team’s roadmap.
What you'll do:
As a Lead Software Developer your key area of responsibility will be designing, building and maintaining efficient, reusable, reliable code to develop high throughput, performance critical, scalable applications. You will be responsible for leading the development of scalable code, prototypes, and PoCs, taking ownership of complex, long-term projects, and ensuring timely delivery. You will need to work closely with other software developers, engineers, internal technical teams, cross-functional partners, product managers, and external stakeholders.
To be successful in this role you will be a strong team-player and mentor with an entrepreneurial mindset, comfortable working under pressure in a flat organization, and possessing excellent verbal and written communication skills to document complex technical systems. In addition, the successful candidate will have expert technical competence in design and architecture, exceptional analytical and problem-solving skills, and strong project management capabilities to manage multiple fast-changing priorities simultaneously.
How you'll make an impact:
- Independently and proactively identify key areas of architecture improvement, including preparing proposals on achieving the improvements.
- Lead, oversee and plan the development of scalable code, prototypes, minimum viable products and PoCs.
- Take ownership of complex/ long-term projects and contribute to their implementation, including defining scope, requirements, communicating project progress, challenges and solutions, while ensuring timely delivery.
- Collaborate with other development teams on design and implementation of features spanning multiple products.
- Conduct comprehensive testing and code reviews to ensure that code quality is maximized and best-practices are followed.
- Provide expert project-leadership and guidance as a SME, to the department and larger organization.
- Contributes to defining strategic direction, planning the roadmap, and synthesizing feedback to ensure team success.
- Serve as a cross functional resource across team/department and products to contribute to solving technical issues in development.
- Builds relationships and serve as a technical point of contact partnering with stakeholders including customers, product managers, cross-functional partners, and external partners and other internal team members.
- Mentor other developers on the team and work with the team leads to set the direction of the team and guide key stakeholders on execution choices and trade-offs, and advise manager with insights and recommendations to improve the team.
- Appropriately document system design and architecture such that it is easy to understand, maintain and extend.
- Support Geotab global strategic initiatives. <li style="font-family: helve