Senior Software Engineer

Upside Energy
United Kingdom
12 Oct 2018
10 Nov 2018
Contract Type
Full Time
At Upside Energy we have created a cloud platform that allows everyone to make smarter decisions when consuming power and contribute directly to building a low-carbon energy system.


The Upside Cloud orchestrates a distributed fleet of electrical devices that can add or remove load from the power network. These devices range from generators, UPS facilities, EV & PV systems, batteries etc; broad in range and high in number! The cloud services consists of a number of containerized microservices running on Amazon’s AWS. Most of the codebase is written in Java 8, with python and R used for rapid prototyping and statistical analysis tools.

Our Processes

We run an agile process, in which small incremental changes are proposed, analysed and taken through a design, develop, test, and deployment process by our development team.

Our code is under full source control (git), and the core repository is hosted on Bitbucket. We undertake a typical branch and pull request process in which code has to be reviewed and approved by multiple members of the team before it can be accepted into the core code base.

Our team also run a TDD process, which helps us ensure good code coverage on our code base. Further to this we also have automated code coverage, and automated test processes in which prior to any code being merged into the code base the coverage must be above 90% and all unit/integration tests must pass.

Our current agile process is best described as ScrumBan, whereby we run a Kanban style board and keep to a 2 weekly cadence. We also run regular team code culture and retrospective meetings to ensure the team is constantly improving.

Cloud Infrastructure

We run a microservices architecture within Upside. That is to say, we split the system into a number of small logical services that run independently but interact together through interfaces.

As mentioned earlier, our cloud infrastructure runs on Amazon’s AWS, and we utilise a number of AWS services (S3 storage, Kinesis streams, and Amazon RDS). We also use Kubernetes to orchestrate and manage our microservices. Kubernetes offers auto-scaling, automatic health monitoring and fixing. Kubernetes also enables us to relatively easily migrate our services to other providers, meaning we are not locked into any particular web infrastructure provider.

We are recruiting for a number of Software Engineers (ideally with experience of our tech stack, but attitude will trump specific experience every day of the week) to help us develop this platform, so if you’d like to know more we’d be more than happy to provide a deeper insight into the Upside cloud, focussing on the architecture, infrastructure, and core services we use. We can do this over the phone or email, or why not come and see us for a coffee in our offices in the Northern Quarter? We’ll make ourselves available for people who share our passion for cool tech and making a difference.

Our History

We were created in 2014 in response to a challenge run by the National Grid. Since then we’ve won a LOT of awards for low carbon innovation and received over £2.4m grant funding from Innovate UK. Further funding from £1.2m seed equity and £5.5m from a Series A round that we closed in December ’17, means we are about to realise our vision for a newer, cleaner and more equitable energy system. It’s a really, really good time to be joining us.

Similar jobs

Similar jobs