Berlin, Germany


201 - 500



dvrTech stack

Amazon Web Services (AWS), Flutter, Go, Kotlin, React, Scala, Swift, Kubernetes

gradeKey values

checkDiverse team
checkFlat hierarchy
checkCollaborating practices
checkValues work/life balance
checkAgile processes
checkShare & grow together

Work at MOIA GmbH

We are a young and innovative mobility company aspiring to change people’s lives by re-imagining urban mobility. MOIA is developing a radically new shuttle-on-demand service that will bring affordable, clean and convenient mobility to everybody and make cities a better place to live.

Running as an independent company under the umbrella of the Volkswagen Group, we are able to utilize the resources and know-how of a global corporation – while being an agile, experimental and team-spirited start-up.

Our fast growing team in Berlin and Hamburg has a human-centered perspective on mobility and is focusing on one goal: Be one of the leading global mobility-service-providers by 2025.

Sounds exciting? We are looking for bright minds who want to join us on this exciting and challenging journey. Become the next member of our diverse, inspired and highly skilled team!

The Magic Behind MOIA

By Nihal Gonsalves & Jay Morrow

You may know MOIA from our eye-catching vehicles driving around Hamburg, or from our apps — but what’s behind the scenes at MOIA Engineering?

MOIA runs a ride-sharing service in Hamburg and Hanover, with our own apps, backend services, drivers, and vehicles, that all come together to provide a fully-integrated, affordable, convenient, and modern ride-sharing experience.

Through this series of blog posts we’d like to show you what makes MOIA run, demystifying some of the magic behind how our technology runs the ride-sharing service for the cities of the future.

Our code on the road: the connected, all-electric MOIA+6

The MOIA+6 is at the core of our mobility experience. To run a dynamic ride-sharing service, we equip our vehicles with an embedded computer, a remote unlocking module, a telemetry unit, a WiFi router and two connected displays: an info-screen for passengers and a tablet for navigation.

Every MOIA+6 communicates multiple times a second with our cloud platform over MQTT (AWS IoT) to send information on over a hundred different metrics including sensor data, geolocation data, and automotive telemetry (down to the angle of the gas pedal!). Our backend systems continuously tell the vehicle about new passengers, routes, and up-to-date travel times for all pickups and drop-offs. We also make use of IoT Greengrass to run a small slice of AWS in the vehicles themselves, making for a seamless experience even through momentary connectivity hiccups like driving through the Deichtor-Tunnel in Hamburg.

In the Cloud

Hidden away in the cloud are our purpose-built microservices running on various AWS compute environments, keeping track of every vehicle and passenger request that comes in, pooling passengers, routing vehicles, and equipping the MOIA Operations teams with the tools they need to run an excellent, highly-available service. These are built with various technologies best suited for the job at hand. For compute, we use Kubernetes on AWS EC2, AWS Fargate, and AWS Lambda, depending on the workload. We tend to stick to fully-managed AWS services by default (including DynamoDB, RDS, IoT, Kinesis, S3, API Gateway, and Greengrass), making exceptions when it makes sense. Each team chooses a programming language suitable to the problem, mainly (but not limited to) Scala, Kotlin, and Golang.

These microservices communicate primarily asynchronously using domain events, and all come together to provide a consistent, unique experience for passengers, as well as our drivers and hub staff.

Dispatching and Dynamic Routing

Dispatching keeps track of our entire fleet, communicates frequently with our vehicles, and (as the name implies) dispatches the best vehicle to every customer. It knows exactly where each vehicle is, which passengers need to be picked up and dropped off, and when the vehicle needs to return to the hub (to recharge or to end a driver’s shift on time). Dispatching makes heavy use of AWS IoT to have up-to-date telemetry data.

To serve a trip request, Dispatching selects a pair of virtual stops from the MOIA Stop Network most suitable for the passenger’s origin and destination. It then asks Dynamic Routing for an optimal route according to various criteria including the estimated travel time based on the traffic situation, pooling efficiency (passengers pooled in a single vehicle), and the drop-off time promised to other passengers.

Vehicles are also constantly re-allocated by Dispatching to optimal areas and are periodically sent back to the nearest hub with free charging points for recharging when required, as well as when the end of a driver’s shift is upcoming.

Trip Booking, Pricing & Payment

If you’ve ever used MOIA, these are the two services that work directly with the app to make your trip possible. From the moment you hit the “Get Offer” button, Trip Booking takes over and coordinates the saga of everything that needs to come together within seconds to guarantee you a great trip.

Trip Booking communicates with all the other backend services to present you with a suitable route, fetches a dynamically-calculated price from Pricing (depending on the distance, weekday and time), and comes back with an ETA and your pickup and drop-off stops. Once you slide-to-order, it confirms the validity of your payment method with Payment and confirms your MOIA with Dispatching.

The Payment team works with our payment providers to ensure a seamless payment experience no matter what customers choose to pay with: credit or debit card, Apple Pay, Google Pay, or PayPal. It also keeps up with the various compliance requirements such as the EU PSD2 and SCA (Strong Customer Authentication).

Operations — Fleet and Employee Management

The hub teams work round-the-clock to optimise supply by keeping vehicles in tiptop shape, charged, and ready to go, and planning driver shifts optimally. The Fleet and Employee Management teams provide the technology to make these processes efficient, keeping track of various workflows such as service area and stop network management, shift planning, damage reporting, vehicle hardware management, TÜV inspections, maintenance, and everything else. This is exposed via a React frontend and a combination of REST and GraphQL.

The Fleet service additionally provides a keyless experience to drivers by utilising the remote unlock and telemetry unit in the vehicles.

And everything else

There isn’t enough space in one blog post to talk about everything that makes MOIA run — including the mobile frontends (that utilise Kotlin, Swift and Dart — Flutter), DevOps, incident handling, and the many small services that have so far gone unmentioned.

In the coming months, we want to tell you more about how we work at MOIA, including our agile processes, engineering culture, and of course, the many team events, parties, and office dogs.

If what we do sounds interesting to you, and you’d like to work on an innovative, sustainable, and affordable mobility service for the cities of the future, learn more about open positions on our career page

Born to be Agile

Agile methods like Scrum and Kanban have taken over the modern software development process, but each company is a unique system with its own challenges. With the various definitions of “agile” floating around, what does agile mean to us at MOIA?

MOIA was founded in 2016 to build a modern ride-sharing service for the cities of the future — reacting quickly to change has always been a part of our core DNA.

Our agile coaches, Antonela and Laura, will tell you more about how they work; to improve how we work.

What does agile mean at MOIA?

Antonela: To me, agile is about finding creative and self-organized ways to deliver value in iterations, and learning from experience. MOIA has had a complex task charting new directions in the market by offering an innovative mobility service, and agile was the natural response to it. It feels like a part of the company’s DNA.

Laura: I fully agree with that. To me agile at MOIA is about a self-organized and responsible method of collaboration. Since the beginning everyone has owned their share of making MOIA better every day. We constantly learn about ourselves, our service, our market, and how to improve our work, as well as our way of working.

What is the difference between MOIA and other companies that you have seen?

Laura: Even though I have seen and worked for really amazing companies before, I have never been in an organization where everyone is this passionate about their work. I think that one key factor is the strong vision that MOIA was founded out of, one that is very present in our daily work. Throughout my time at MOIA we have always had clear goals that derive from this vision. In addition to these goals we also have the freedom to decide for ourselves about how we want to achieve these goals in the most effective way. This mixture of passion, purpose-driven development, and trustful autonomy makes MOIA really unique to me.

Antonela: Adding to that, I feel that MOIA is successful because it started with teams of capable and passionate people who were eager to find ways to make it work. There is a strong sense of purpose and passion. People here know the why, and that gives us the chance to put all our resources and creativity into discovering ‘what’ and ‘how’.

Which agile frameworks are used at MOIA?

Antonela: Another thing that I love about MOIA is that we value matter over form; we are more focused on “doing” than on naming things. As agile coaches, our main task is supporting the team with coming up with a process that enables them to reach their goals in a sustainable way — whatever that is. In a practical sense, this means that I like sharing my knowledge and experience with the teams and then giving them space to come up with solutions together. I enjoy borrowing ideas and approaches from different methodologies and finding new ways to tailor the solution to the specific needs of each team.

Tell us where you are performing well in terms of agile values and where you could improve?

Antonela: At MOIA we are really passionate about our customers. There is a strong focus on learning by doing and analyzing data. I am extremely happy to say that MOIA is not the right company for people who enjoy endless hypothetical discussions. We could improve by being even more courageous and embracing failures as perfectly tailored, made-to-order lessons.

Laura: As Antonela said before, we strongly believe in individual adaptation over using a specific framework. We embrace change and all the new lessons that come with starting such an innovative and complex service from scratch. At MOIA no one has ever told me that I have to do my job in this or that way, and I value this freedom a lot. However, the responsibility to shape my role into an effective one is placed under my control.

What are the main challenges for MOIA?

Laura: As a rather young company we are not only constantly learning new things about the market we are in, but also are still growing every month. This means that even though we value flexible adaptation, it is also challenging for us to keep up the pace while still building trustful relationships in our teams and delivering valuable features to our customers.

How do you make decisions on a broader level?

Laura: I’m really proud to say that broader decisions are made by everyone in the company who is passionate about the concerned topic. These topics can also be brought up by anyone, for example in our bi-weekly round regarding ‘How we work’, or in a company retrospective. Regardless of the origin of a problem, we invite everyone to participate in finding a new solution. To us it is imperative that we shape our decision-making culture from a similar cross-functional perspective.

Antonela: And adding to that, I am impressed by how MOIA as an organization is able to simultaneously encourage participatory decision making while staying responsive and being able to come to decisions quickly.

What do you wish for next year at MOIA?

Antonela: My wish for MOIA is that we stay strongly focused on our company’s mission and continue to find the right questions and answer them in synergy.

Laura: Like Antonela, I wish that we keep raising and answering the right questions. To me this is strongly connected to getting more data from our customers and the overall service to learn about us from a neutral perspective.

How we test drive and test ride at MOIA.

by Ada Pohl

MOIA is what I like to call a full-stack service. The vehicles, drivers, and apps (including the public-facing user app, driver app, and navigation app) are all developed by MOIA.

Each app has different needs when it comes to testing.

Let’s go through the navigation app, which the drivers use within the cars to navigate to customers’ locations and then to their respective destinations.

It can be especially tricky to test. Verifying that we are able to compute a route when a passenger books a trip is one thing – but making sure that it is always a valid and a good route is another. Furthermore, how do you verify that the user interface of the app is intuitive to use while driving and being concentrated on the road?

In order to make sure our tests are realistic, our team that builds the navigation app uses two types of testing; test rides and test drives.

So what is a test ride and how is it different from a test drive, and what do we learn from each of them?

On a test ride each team member pretends to be a real MOIA customer. We book trips in groups of 2–4 so they have a chance to get pooled with other customers. When the vehicle arrives they just board the MOIA and enjoy the ride. But what do they learn from this?

If there are no customers in the vehicle, we tell the driver that we are MOIA employees looking for feedback on the navigation app. They then listen to general feedback, things that need to be improved, and feature requests.

However, when other customers are in the vehicle we just observe silently.

We then take what we learned to a post-ride meeting to figure out what and how we can improve.

The test drives, however, are a little bit different.

For this our team builds a beta version of the app with all the upcoming changes, and puts it on a device with which we then role-play the drivers and customers themselves.

This means that we take a car to a test environment, book trips, execute them by actually driving to the Pick-up and Drop-off stops, and observe the routing and the interaction with the app.

If everything works as expected, we know that they can confidently release a new version of their app.

This takes place every two weeks, and every MOIA employee (regardless of which team they work in) has the chance to participate in a test ride/drive to understand how our digital products work.

Want to join our test drives or test rides? The Vehicle Guidance team is looking for new colleagues. Check out our job opportunities.

Developer jobs at MOIA GmbH