BACK-END (OR FULL-STACK) SOFTWARE ENGINEER
Do these next words excite you?
- Helping streamline and evolve access to reliable, clean energy to those in need around the world, as well other renewable distributed energy infrastructure projects from the comfort of your desk.
- Being a key player in a small but dynamic, diverse, fun and growing organization spanning 10 countries including the USA, Nigeria, Germany, Kenya, and India.
- Back-end development of a critical application based on the Java Spring framework.
- Involvement in a wide range of technologies including distributed services, cross- service messaging, automated pipelines, timeseries/NoSQL databases, reactive programming, big data analytics, and cluster management of cloud services.
If your heart started beating a little faster then read on…
Who we are
More than a billion people in the world do not have access to electricity. Odyssey Energy Solutions is a Boulder, Colorado-based purpose-driven software company tackling this global challenge with a big goal: to rapidly expand access to energy around the world by streamlining and reducing the costs of developing and financing solar microgrids and other clean distributed energy systems. Since its establishment in 2017, Odyssey has become an integral part of the energy access finance ecosystem. Odyssey’s big data investment and asset management platform is catalyzing the deployment of hundreds of millions of dollars into the mini-grid and solar home system sectors across Africa. Odyssey is well-funded, has significant market traction, a renowned product, and a highly collaborative, motivated team that has fun working hard together. Odyssey was also awarded the international Keeling Curve Prize for our work reducing greenhouse gas emissions.
What we are looking for
OES is actively searching for a proven Software Engineer to play an essential part in improving and scaling the back-end of our core web applications. Those apps use a service-based architecture involving Java Spring, PostgreSQL, RabbitMQ, Elasticsearch, and more. There will be opportunities to expand into other technologies as we grow.
Expected Experience and Skills;
- At least 3 years developing a real world web application using Java/Spring backend services with a desire to build on that Java experience
- History of continually improving professional skills and gaining proficiency in new technologies
- Designing intuitive data structures and writing code using modern best practices and patterns
- Working on a distributed system within cloud environments (GCP, AWS)
- Deploying code using git-based source control, automated build pipelines, and automated tests across multiple environments
- Exposure to processing/querying data from both time-series and relational DBs such as PostgreSQL, Elasticsearch, InfluxDB, or TimescaleDB
- An agile approach to the development process
- Working with messaging services such as RabbitMQ
- Implementing OAuth/SSO
- DevOps abilities to deploy and monitor Docker containers using Kubernetes in a cloud environment
- Flexibility to work on our Angular-based frontend
- Proficient English in a business environment
- Excellent communicator including in a virtual workplace
- Well-organized and punctual
- Team player: Progressing the team’s plan while assisting others across our organization and stepping up when needed
- Highly motivated and able to work independently
- Location: Remotely within an American/European/African time zone, to overlap with coworkers in the US/Europe/Africa.
- Once adequately trained, provide occasional off-hours assistance to our production support team. This requirement currently rotates every week amongst our developers.
Please send your one-page resume to [email protected].