ONZO is a data science and analytics scale-up primed to disrupt the energy sector. We analyse smart meter data, providing a depth of insight that helps our customers understand their energy usage and ultimately helps them to save energy. Our insight to this data also helps utilities better manage their network, optimise their business and engage with their customers. The vision for ONZO's future is compelling, and with backing from private equity firms such as West Coast Capital we're looking forward to having a massive impact over the next few years.
You will be part of a team of talented engineers based in our Edinburgh Codebase office and will work closely alongside the Data Science & Product teams. We're a friendly bunch with a huge range of backgrounds, and we strive to provide a welcoming, supportive and sociable working environment.
Engineering @ Onzo
The team that delivers our platform makes up 70% of the company, as ONZO is fundamentally all about the technology. We don’t expect people to tick every single box on the job specification when they join us. We’re much more interested in identifying, hiring and retaining the best talent.
Our engineering manifesto includes the following values (among others):
- Make evidence driven decisions
- Automate early and often
- Favour the simplest reasonable solution (Occam’s razor)
- Don’t sacrifice quality
Our technology stack includes:
- Kubernetes on AWS
- Cassandra, Aurora PostgreSQL, Kafka
- Spark with Scala & Python
- Release engineering via GoCD, Artifactory, Helm and Rake
- ELK, Prometheus, ElastAlert and PagerDuty
We have adopted cutting edge technologies where we view “this will be the new normal”. In turn this often leads to solving engaging and complex problems.
About the Job
- Design, document, and implement new features in response to our Clients’ product needs and our business development strategy
- Mentor and support the development of junior software engineers
- Provide 2nd level support to client facing support teams, troubleshooting and resolving issues
- Actively engage in software and system architecture to continuously improve our services
- Troubleshooting technical problems of a complex nature
- Identify and improve existing product features
- Challenge your peers and make a decision
- You have 2+ years of software engineering experience using Python
- You love data, and solving complex problems about it, and with it.
- You enjoy helping others achieve their goals as much as you do your own.
- You must have excellent interpersonal and communication skills and be capable of functioning independently and as part of a team.
- You must also have the ability to work in a fast-paced, rapidly changing environment with conflicting priorities.
- Thorough and accurate, a critical thinker, with good attention to detail.
- A self-starter, able to prioritise tasks and manage own time effectively at pace.
- 2+ years of commercial programming experience with Python (in linux environments)
- Excellent communicator: you don’t attach your ego to your ideas; you always listen to others
- Experience of creating and working with RESTful APIs
- Understanding of distributed data systems and data engineering practices
- Experience with PostgreSQL (or other equivalent RDMBS)
- Focus on rapid development through iteration in an agile environment
- Experience using test frameworks and automating these
- Experience with: Kafka, Cassandra &/or other columnar data stores
- Usage of AWS services
- Knowledge of NumPy and Pandas
- Usage of Docker and Kubernetes; AWS
- Continuous Integration / Continuous Delivery / Continuous Deployment advantageous
- 25 days holiday
- 10% bonus scheme
- Contributory pension
- Life insurance
- Income protection