Job Title : Senior Java Developer / Architect
Location : Montreal, QC
Duration : Long term
Responsibilities description :
- Define architecture and design for a resilient, scalable, and observable system.
- Perform hands-on development in an agile squad working with product owners, business analysts and other developers.
- Implement automated testing, leveraging unit tests and integration tests to validate every feature.
- Guide more junior developers helping them to adopt the best design, coding, and testing practices.
- Drive the team to follow the best DevOps practices.
- Focus on automation at every level of the SDLC.
- Understand the requirements, help defining milestones and backlog based on business priorities, team capability and velocity.
- Act as an end-to-end owner ensuring the system is developed, tested, deployed as planned and is performing as expected in production environments.
- Contribute to team standards and improving processes.
Skills required (essential) :
Hands-on, with 7+ years' experience in building distributed systems applying agile practices.Sound understanding of microservice architecture and design patterns, system resiliency, scalability, security, and observability.Ability to design and build automated test harnesses for microservices.Experience in designing and implementing messaging- and rest- based middleware and performing databases modelling.Strong working knowledge of core Java and Spring frameworks - including spring-boot and testing.Knowledge of DevOps practices and tools.Strong oral and written communication skills.Skills desired (recommended) :
Understanding of Cloud-based application development, preferably with Microsoft Azure Cloud.Familiarity with Kafka.
Experience Angular UI development framework.Experience coordinating and mentoring a development team.Prior experience in FinTech application development.Experience with working in a global delivery team.