What We Do.
Awesense helps electric utilities improve grid efficiency by finding energy losses due to theft, errors and inefficiency. These losses cost in the billions worldwide and have a significant impact on greenhouse gasses. Awesense addresses this issue with an integrated system of IoT sensors and grid analytics software that provide true intelligence into the distribution grid. Our system places a special emphasis on risk-based identification of losses, and has a proven track record cutting losses in half within 3 years. We have customers around the world using our solutions.
What You Will Do.
We generate analytics from a large volume of data and are building out multiprocessing batch jobs and stream-oriented architectures to support this. You will help develop and improve our SaaS product grow, by writing server code.
Why Join Us?
Because what we do makes a difference. We develop products that help utility companies around the world save wasted energy, reduce C02 emissions, and increase public and worker safety. We were recently awarded Smart Grid Canada's 2015 Innovation Award and BC's top emerging 'Green' Company. Gartner named Awesense a Cool Vendor in Energy & Utilities for 2016.
Who You Will Be Working With.
You will be part of an integrated team of software developers, hardware engineers and data scientists. As part of the software team, you will be working with front end developers, testers, and other back end developers to design, develop and deliver our next generation software as well as customize our software for global customers.
What will you be doing?
- Maintain existing code base of back-end application logic and database interaction;
- Determine the performance bottlenecks in the batch-processing framework, and make whatever changes are necessary in configuration, database structure, parallelisation, and code improvements to remove those obstacles;
- Develop ETL and export utilities which bridge customer formats and our own;
- Build and support analytical data models;
- Design and implementation of next generation back-end infrastructure;
- Document your work, in code comments, wiki documents, and customer-facing specifications;
- Be responsive, able to deliver appropriately-scaled improvements in short timeframes, be able to course correct;
- Be a helpful, collaborative, teaching, learning, pleasant colleague.
What skills do you have that we need?
- Experience developing data warehousing, near-real time processing, and analytical applications;
- Excellent SQL database skills: CTEs, sub-queries, window functions, range types, etc.;
- Familiar with both raw SQL and ORMs, and know when each is appropriate;
- Familiar with Service Oriented Architectures, Message Oriented Middleware, Queues, Distributed Processing, Workflows;
- Fluent with unit testing and UnitTest-based frameworks. Experience with nosetests nice to have;
- Clear English language technical writing ability, especially in comments and short documents;
- Solid software engineering fundamentals. Technologies come and go, but recursion, and off-by-one errors are eternal;
- Experience with GIS is a plus;
- Experience with NoSQL-style data stores is a plus;
- Experience with stream processing architectures, is a plus;
- Bonus points if you have experience in power distribution systems, metering & billing or related topics (but don't let this stop you from applying if you don't have this . . . we still want to hear from you!).
- Knowledge of the electrical utility sector;
- Experience with information visualization and design using and implementing visualization tools like Tableau, D3 or Qlikview;
- Solid SQL skills for querying relational databases (e.g., SQL Server, DB2, MySQL);
- In-depth knowledge of mobile device troubleshooting methods;
How to Apply
If you are interested in making a difference in the world, with a talented and passionate team, working on interesting problems, while making some serious equity in the process, let us know.