(Senior) Software Engineer
Habitat Energy is a fast growing technology company focussed on the trading and algorithmic optimisation of energy storage and renewable assets around the world. Our mission is to deliver outstanding returns to our clients to increase the attractiveness of renewable energy globally and support the transition to a clean energy future. Our rapidly growing team of 89 people in Austin, TX, Oxford, UK, and Melbourne, Australia brings together exceptionally talented and passionate people in the domains of energy trading, data science, software engineering and renewable energy management.
We have a vacancy for a Software Engineer to join our UK Software team based in Oxford. In this role, you will be part of the team responsible for building, maintaining and evolving our renewable energy platform. This platform enables our trading and operations teams to manage and optimise one of the largest fleet of battery energy storage sites in the UK. You will be joining a number of talented, multi-disciplined software engineers who want to build resilient, scalable software to help enable the net-zero transition.
You will be responsible for:
Developing and maintaining our applications
- Maintain existing code and own brand new applications. We have written and deployed dozens of different microservice APIs and UIs covering asset dispatch and monitoring, trade management and exposure, reporting and settlements, market interfaces for manual and automated trading, data consumers required for forecasting and optimization. Operations and markets keep changing and so do we.
Collaborating with internal teams to understand challenges and work towards defining solutions
- Interface with traders, data scientists, ops analysts and other software engineers to understand the needs and requirements from our software. Navigate the different market and third party tooling to help architect robust and scalable solutions.
Ensuring that software is designed, built, released and maintained in accordance with our SDLC process
- Write clean and tested code. Check deployments on our Kubernetes cluster are successful and work as expected. Write clear documentation, including troubleshooting runbooks, to enable on-call support. Participate positively in peer reviews for and from colleagues to ensure the quality of all our software applications.
Participating in rotating on-call support of operations
- All software engineers are expected to take an equal share of the tech-on-call rota. This forms the first point of call for software support issues. Utilising runbooks, support Trading and Operations in live troubleshooting, using the escalation procedure as required.
"Must have" skills and experience:
- Minimum of 2 years experience, with 5+ years for candidates seeking a senior-level
- Proficiency with API frameworks (FastAPI, Django, etc.)
- Experience with modelling databases with Python (ideally SQLAlchemy)
- Experience developing UIs with moderns frameworks (e.g. Vue)
- Desire to be part of a fast-paced team, working with live, operational assets
- Writing code that is clean and tested
- Positive, open, and honest approach to technical and interpersonal challenges
- Can communicate complex issues and solutions to technical and non-technical stakeholders
"Nice to have" skills and experience:
- Experience in energy/power trading
- Experience with Vue
- Experience with AWS
- Experience with Docker
- Experience with Github Actions
- Experience with Kubernetes
- Experience with real-time (streaming) data management, transformation and orchestration tools and approaches
- Experience working with microservice architectures, with a focus on zero-downtime deployments and scalability
Ultimately we are looking for someone who is a great fit for our company so we encourage you to apply even if you may not meet every requirement in this posting. We value diversity and our environment is supportive, challenging and focused on the consistent delivery of high quality, meaningful work.
In return, we’ll give you a competitive salary, flexible working arrangements and a lot of personal development opportunities. We operate a hybrid working model with at least 2 days in our offices in Oxford.
When you apply for a job with us, we process some of your personal information. You can find out more about how we process your information in our candidate privacy policy here.