Cloud Applications Engineer


javascript aws pipelines Kitchener, Ontario, Canada | Full-Time

See all EnPowered jobs →


We all know that electricity is cheap at night and expensive during the day, but it's actually not that simple. The true cost of power is very cheap almost always, but extremely expensive for short 5-min intervals. At EnPowered, we predict when these price spikes happen in advance, and help our customers to reduce their usage when electricity is expensive to save up to 93% on their energy costs. EnPowered is already live in Ontario and is expanding into new markets, we are looking to grow the team to continue helping our customers save over $40M per year while also helping with the transition to the future electricity grid.


Our core team has built out our Ontario business, and we are now growing the team as we expand into other North American markets. If you are passionate about energy and the environment, and you are looking for the opportunity to own a project, you will fit right in! We are located in the awesome Communitech building in downtown Kitchener-Waterloo (there’s a ping-pong table and a slide) and we often have fun team outings on Fridays.


The cloud engineer will join the effort to build-out, scale, and manage our serverless, event-driven, microservices infrastructure on the AWS cloud platform. We are looking for someone who is passionate about infrastructure as code, distributed systems, Domain Driven Design and functional programming.

As a Cloud Engineer, you will also:

* Work with the rest of the engineering team to build, scale and manage the platform

* Collaborate with other team members to establish pragmatic system boundaries and microservice contracts

* Implement and maintain microservices and their underlying cloud infrastructure on AWS

* Build and maintain delivery pipelines

Required Skills

* Solid competence with event driven architectures and microservice patterns like command-query-responsibility-segregation (CQRS), process managers, database-per-service etc.

* Ability to program at a high-level. You should be idiomatic in javascript, able to use expressions and functions effectively and clearly. Knowledge of other languages including python is also valuable. You should be comfortable with functional programming.

* Solid competence with AWS cloud services, — especially Cloudformation, Lambda, Dynamodb and API gateway; and specifically for dynamodb, you need to be able to design Keys and Indexes to support multiple access patterns on a single table. You must also be able to quickly identify and adapt other services in AWS cloud.

* Competent with git, and the CLI. Node.js should not be new to you, and you should be able to write tests for the microservices you will be implementing.

* Thorough knowledge of HTTP, and be able to write services that integrate with other services using HTTP. If you happen to have good knowledge of other protocols like MQTT, and websockets then even better.

* Be able and willing to learn new technology, and adapt to rapidly changing requirements.

* It is an added advantage if you have experience with testing at scale in the AWS cloud.

EnPowered has health benefits, offers flexible schedules, regular team bonding events, a competitive salary, stock options, and a generous vacation policy.

If you are interested in applying, please send your CV and github profile to [email protected] In addition, please let us know if you require any form of accommodation during the recruitment process.

Know someone who would be a perfect fit? Let them know!