Talent.com
Lead Software Engineer

Lead Software Engineer

Lone Wolf Real Estate Technologies IncCambridge, ON, CA
30+ days ago
Salary
CAD130000–CAD180000 yearly
Job type
  • Remote
Job description

Those duties include :

Work within an Agile environment to plan and deliver work incrementally.

Develop high quality maintainable and scalable SaaS (Software as a Service) applications on the Java technology stack.

Collaborate with product owners, architects, and software engineers to deliver key business objectives.

Deliver an exceptional user experience to our customers, through the delivery of products and services with strong and extendable design patterns.

Mentor less-experienced engineers in their career development and provide them with regular guidance and direction including peer code review.

Research, design, test, and evaluate modern technologies and vendor solutions.

Analyze user stories with product owners to validate product designs.

QUALIFICATIONS :

6-8+ years’ experience developing and delivering large scale distributed systems using modern microservice architectures

Experience managing an engineering team in an agile environment.

3+ years’ experience in Golang

3+ years’ experience in JavaScript (Node.js)

Prior experience with a Jascript SPA framework (Vue.js)

Prior experience with at least one major IaaS and / or PaaS technology (AWS)

Prior experience with relational database technologies (PostgreSQL, MySQL)

Prior experience with document stores (Elasticsearch)

Prior experience with message queue systems (Kafka)

Prior experience with agile development, continuous delivery, and DevOps

Thorough understanding of the DRY, SOLID and KISS principles of software development

Flexibility and creativity in implementation of designs - including leveraging emerging technologies

Excellent written and verbal communication skills

Excellent organizational and problem-solving abilities

Ability to clearly explain and justify ideas when faced with competing alternatives

Ability to communicate and apply common design patterns across a wide range of technical problems