Back to All Events

ember - Software Engineer (Mobile)


Software Engineer (Mobile)

Job description

About Ember

We're building the future of public transport — convenient, affordable, connected and zero-emission. Our goal is to make it easier and more enjoyable to get from A to B with Ember than it is with your own car.

We’re a tech company, not a traditional bus operator. We've built a platform that coordinates our entire operation – everything from monitoring vehicles and controlling chargers to selling tickets and calculating ETAs. This allows us to use electric buses more intensively than anyone else in the world, leading to a massive emissions reduction. It also helps us provide a much better passenger experience, with innovative features like demand-responsive stops.

We’re still tiny, with two routes and 24 buses. The challenge is to scale this 100x whilst staying lean, increasing efficiency and delivering an even better product experience. We’ve recently raised equity from some of Europe’s leading climate VCs and are looking for mission-driven individuals who can help take us to the next level.

Our tech stack

Our systems drive everything we do including booking tickets, tracking buses, controlling chargers, calculating ETAs, monitoring traffic and keeping passengers informed. We rely on the following tools and technologies:

  • Python for our application code

  • React for our frontend

  • Postgres for data storage

  • Redis for caching

  • Kafka for stream processing

  • SwiftUI for our Driver iOS App

  • AWS, Terraform, Gitlab CI/CD, Docker and ECS to deploy and run our services

  • Flutter for our on-board server running Android, which handles concession ticket validation with more on-board experience features to come.

What you will do

You will mostly be focussed on continuing to develop our Driver iOS app and on-board Android-based server, as well as building a customer app in due course. You’ll often be taking features from conception to completion, which means contributing to codebases across our entire tech stack.

You might work on the following or similar projects:

  • Creating a customer app, to make it easier for customers to book tickets and keep up to date.

  • Refining the experience and features in our driver app such as moving to a navigation-first experience, allowing drivers to change passenger tickets, or adding functionality to make pre-use vehicle inspections seamless.

  • Provide stewardship for our mobile codebases. That includes providing guidance on best practice to others, as well as ensuring a good standard of observability, debuggability and automated testing.

  • Improving the experience on our website. That might be adding saved payment cards, refining our operations pages, or keeping passengers informed about temporary stops and roadworks.

Your work will be making a difference to our planet by helping more people travel on zero-emission public transport.

Diversity and equality

At Ember, we support diversity across our team and customers. We work to ensure every employee feels respected and able to give their best, whether temporary, part-time or full-time. We’re happy to offer flexible working patterns where they make sense, are compassionate when it comes to time off and offer enhanced maternity and paternity leave.

Read more about our approach in our Equal Opportunities Policy.

How do I apply?

Send your CV and a cover letter telling us why you're interested in the role. If you have code from projects which you’ve worked on, please send that too.

Job requirements

Who we're looking for

  • You have at least a few years of professional experience in mobile app development, either in native languages or using cross-platform frameworks. That said, we are more interested in your ability and motivation than a strict number of years.

  • You are pragmatic and value simplicity. You want to be constantly shipping quality code which benefits our customers and the business.

  • You are interested in contributing to other codebases across the stack, such as our backend and frontend.

  • You are driven, thoughtful and always hungry to learn more.

  • You are excited by the idea of making an impact in a small growth company. Bus services are a real-world, tangible product where you can see the impact of changes on people’s day-to-day lives. As we scale, that impact will grow.

  • You are happy to work from our Edinburgh office at least a few days a week, because we value in-person communication. But we’re flexible if you want to work from home on some days.

  • Experience working on large scale systems within a small company is a plus.