You will be responsible for engineering and maintaining features and components across our backend systems and web application stack, in support of our award winning SAAS Fleet Management products, Reveal & Fleet. You’ll work as part of a cross-functional squad of engineers, UX, and QA, using agile methodologies to bring good things to our customers quickly (and then act on their feedback to make them even better).
Responsibilities:
- Participate in product feature implementation, both independently and in cooperation with your team.
- Implement changes and new features in a manner which promotes efficient, reusable and performant code.
- Liaise with product stakeholders and other teams in the organization to complete the projects on time and to the highest quality standards.
- Participate in peer code reviews, manage criteria applied during code reviews.
- Investigate technical issues during the full development lifecycle including specific component in production.
- Provide effort estimations for the individual and team assignments.
- Coach and mentor less experienced members of the team.
- Working with the Solution Architect, define highly detailed specifications for the technical solution.
- Enforce development best practices within the team.
You'll need to have...
- Bachelor’s degree or relevant work experience.
- Experience in software development.
- Knowledge of Object Oriented/SOLID Design principles and Practices.
- Experience developing scalable microservice architectures.
- Experience with distributed caching frameworks (e.g Redis, Memcached) and messaging frameworks (e.g. Kinesis, RabbitMQ)
- Knowledge of the .Net ecosystem (Framework and Core) and C#.
- Experience writing automated unit and end-to-end tests.
- Experience with GIT or other revision control system.
- Experience working with relational (SQL Server, Postgres etc) and NoSQL (Redis, Dynamo, etc) databases.
- Experience developing and deploying serverless and non serverless applications to AWS.
- Angular and TypeScript experience
- Experience working in larger project and team environments with product, application support and operations teams.
- Knowledge and experience of Agile development methodologies.
- Good verbal and written communication skills working within a distributed development team
Even better if you have:
- Ability to anticipate problems and take decisive action, giving regard to the impact on other project teams, development partners and stakeholders
- Ability to comprehend complex business and technical scenarios.
- Demonstrated delivery of major projects with a focus on quality and productivity in a continuous integration/delivery environment.
- Ability to approach problems with a sense of ownership, enthusiasm, and innovation.
- Good verbal and written communication skills working within a distributed development team
- Demonstrated ability to lead and /or guide a team.
- Experience developing and deploying serverless and non serverless applications to AWS.
- Experience with low level data structure and algorithm design.
- Mobile Development (iOS or Android) experience.
- Experience with TDD and/or BDD.
- Experience with ELK Stack.
- Enthusiasm for the revolution that’s happening in transportation, can see the opportunities that exist as vehicles become more connected and increasingly autonomous, and want to be a part of it.