Educational requirements: Bachelor
English requirements: Competent English
Requirements for skilled employment experience for years: 3-5 years
Required residence status: Temporary visa, Permanent resident, Citizen
Accept remote work: unacceptable
Scope, build and maintain/enhance systems & services using Kotlin, Java and related open source technologies
Lead and participate in critical technical design and product discussions
Own features and functions throughout their lifecycle from inception, rollout, launch, scale and iteration
Practice eXtreme Programming (XP) engineering techniques of Software Development
Fostering the use of agile practices for Software Delivery
Work in cross-functional Product teams responsible for the discovery, delivery and validation of product features via microservices, APIs, web-apps
Work with the software engineering team following our software development principles, guided by the Staff Engineers and Engineering Managers.
Peer review design decisions, code, automated tests and documentation
Participate in the ongoing design and architecture of our evolving core platforms and services
Collaborate with product managers, experience designers & business stakeholders to build efficient and reliable feature implementations that will delight our customers
Ensure that story estimates and code reviews are completed in a timely manner
Qualifications
A demonstrable and strong track record of building highly scalable, performant and resilient systems/software
Proven expertise in preferably Kotlin, Java and javascript/Typescript (React/Redux)
Expertise in mentoring & coaching junior developers within teams
Strong understanding of Full stack engineering in a complex development environment
Solid understanding of how to build testable, decoupled, maintainable code and other engineering best practices such as XP techniques (TDD, pair-programming, CI, etc)
Experience working within an agile, cloud-based environment, we use AWS
Some working knowledge of backend technologies including but not limited to: Dropwizard, Spring/Guice, ORM/Hibernate, SQL and relational databases (Postgres)
Understanding of integration technologies: microservices, RESTful APIs, gRPC, JSON/xml Structured Logging
Experience with version control, preferably Git
Uses of Serverless technologies will be a bonus
The ability to build scalable and maintainable software-as-a-service applications using modern JVM languages
Willingness to learn and apply new methodologies and techniques as required
Bachelors’ degree in Computer Science or relevant field