Senior Software Engineer (Python/Django) - (F/H/X) - CDI
Role details
Job location
Tech stack
Job description
All technology is written and maintained by a multi-discipline engineering team of around 450 people globally. This includes server-side, client-side and mobile engineers working closely with UX experts, copywriters and designers.
We follow a Kanban-like approach, using Google docs and Asana to specify and manage work; Github, CircleCI and Terraform Enterprise as part of an immutable-infrastructure, continuous delivery pipeline; and Loggly, Sentry and Cloudwatch to measure performance and monitor production.
Some of our coding conventions are open-source.
Octopus is a great place to learn, work with some talented engineers and level-up your skills.
Our technology
On the server-side, we mainly use Python. Most of our websites are powered by Django and the Django-REST-framework. We also use Pandas, Numpy and Jupyter for analysis and forecasting, plus Celery, RabbitMQ, SQS and Airflow for background processing.
We use AWS heavily, employing most of the "Hashistack" (eg Packer, Consul, Terraform) as part of a continuous deployment pipeline. See, for example, Django, ELB health checks and continuous delivery.
Client-side, we use React, Redux and SASS; our mobile apps are built using native code or React Native., * There's a great opportunity for disruption in the energy market. The big suppliers still dominate but are not exactly popular. The energy landscape is changing as we move to more disaggregated forms of generation, with less predictability, more dynamism, and smarter technology. Octopus Energy was the first UK supplier to introduce a "tracker" tariff whose prices track the daily wholesale prices: http://www.cleanenergynews.co.uk/news/efficiency/octopus-offerstransparency-with-wholesale-price-tariff
Requirements
-
We have lots of difficult design challenges to solve. The French energy market is complicated, outdated and process-heavy - there's an awful lot of domain modelling that we need to get right. Strong attention to detail is essential.
-
You will be working in a multi-disciplinary software engineering team; solving design challenges; domain modeling; solving technical problems; engineering solutions for smart meters, writing robust fault-tolerant software primarily in Python and Django, Celery, and async processing
-
We have lots of difficult design challenges to solve. The energy market is complicated, outdated, and process-heavy - there's an awful lot of domain modeling that we need to get right. Strong attention to detail is essential.
-
We have difficult technical problems to solve. With the advent of smart meters, we'll soon be processing millions of meter readings a day., * You'll be working for a company that's fighting climate change. Our parent company is the largest investor in solar generation in the UK and is funding wind and anaerobic digestion. As a supplier, we're helping people to use greener technology and renewable energy, all helping move the world towards a lower carbon future. It would be helpful to have experience/expertise in the following (in rough priority order):
-
Python (minimum 7 y.e.)
-
Django (or equiv. web framework)
-
Fluent in French, and level B2 at least in English
-
Domain modelling
-
HTTP and REST APIs
-
Writing robust and fault-tolerant software
-
Celery and async processing
-
Postgres Plus experience in the following would be a bonus:
-
AWS
-
Terraform, Packer, Consul
-
React and Redux
-
This is a full remote position. We are therefore looking for senior developers. We need people working remotely to have a very good level of autonomy and strong technical abilities. If you are not senior, we may have space for you but it will not be in a remote position.