Software Engineer, Java

Work Market   •  

Toronto, ON

Industry: Technology

  •  

Not Specified years

Posted 96 days ago

Why you should join us?

We believe in bringing talented people (like you!) to our team and experience the incredible level of growth together.   Many of us here (in New York, Boston and Toronto) are here because we believe in the mission that we can build a world class platform that can help our clients and freelancer, and change the future of work.   If you are a type of person who likes to get your hands dirty but also want to participate in architecture and product strategy, WorkMarket offers very unique startup mode like experience with tremendous growth opportunities.

About Technology

We developed progressive web applications based on our “Single Page App” Architecture, aka “SPA”, on top of domain driven API-first platform.  Our backend consists of a Java based Microservice distributed architecture.

Our primary stacks are:

  • Architecture: API Driven Microservice
  • Frontend : React, Redux, Swagger
  • Backend: Java 8, Spring boot, Netflix OSS, Solr, Kafka, Zuul
  • Build: Jenkins, Docker, Artifactory, Gradle
  • Infrastructure: AWS, Consul, Nomad, TerraForm, Vault, Salt, MySQL/RDS

What we are looking for?

We are looking for an experienced Software engineer who can deliver high quality, high value solutions to our customers through strong innovation, operation, analytics and communication.   We emphasize teamwork as a means of accomplishing our goals, an expression of our commitment building industry-leading products on modern technology.

Responsibilities:

  • Design and build foundational microservices
  • Work with existing monolithic code to support front-end Worker Experiences (ie. mobile, desktop web)
  • Design and build new web front ends (using React/Redux) for Worker Experiences
  • Mentor and guide the team to build and integrate new and existing microservices/api, as well as mentoring the team to build out new web front ends for Worker Experiences
  • Teach and mentor other engineers
  • Define standards and patterns to ensure quality and velocity
  • Monitor and respond to production issues according to SLA
  • Collaborate with product owner(s) to prioritize value delivery
  • Collaborate with tech leads to sequence and deliver complex projects
  • Apply privacy by design principle to protect customer data.

Qualifications:

  • Track record of deploying and maintaining complex systems in production
  • Track record of using influence to lead a group of engineers to achieve architectural goals
  • Experience building and supporting libraries used by multiple teams
  • In depth knowledge of one or more: Java, Scala, Clojure, Python, Haskell, Lisp
  • Some experience developing javascript frontends in React/Redux
  • Track record of pragmatic build vs. buy vs. oss decision making
  • Willingness to lead projects

What you'll learn:

  • Java 8 Functional and Reactive programming
  • Distributed systems - the good, bad and ugly
  • Continuous Delivery
  • Information Security
  • Immutable infrastructure and container based technologies