We are looking for a software engineer to reinforce our backend team. We are fast, efficient, focused, intense and fun - anything but bureaucratic or boring. While working with us you can learn how to build financial and transportation services, as well as how to implement hardware integrations. 

Here is what we do:

- We develop and support full-scale booking systems for e-bikes, e-cars, public transport, parking, charging, etc.

- We issue virtual bank cards, manage budget distributions and handle financial transactions for our clients, making sure that numbers match at the end of the month, quarter and year.

- We integrate BLE locks and deal with real-time telemetry and GPS tracks from our vehicles.

- We work closely with our partners from various brands (Riese & Muller, Polestar, Tesla, Mercedes, Stromer, SoFlow, etc.) to ensure the best possible reservation and sharing experience.

Here are a few concrete things we implemented recently to give you a taste of what you will be working on every day:

- Finished end-to-end integration with charging stations from Zaptec using OCPP protocol and implemented a charging management system in our backend.

- Added Bluetooth Low Energy (BLE) integration with I-Lock-It locks.

- Implemented our own license plate recognition system to detect vehicles approaching and automatically open parking barriers.

- Deployed integration with Tesla vehicles over BLE protocol, reverse engineered from their official but undocumented Go implementation.

- Introduced batch charging for parking bookings to reduce fixed costs in transactional fees for small payments.

Here are some things ahead of us, planned for execution this year:

- Development of a comprehensive public charging management system with roaming support.

- Implementation of a remote monitoring system for our IoT devices deployed in the field.

- Introduction of basic fleet management capabilities into our back office system.

If that sounds like something you would like to be involved in, here are the requirements and a bit of context behind them:

- At least 4-5 years of experience in Ruby and Ruby-on-Rails. Our core service is a Rails-based HTTP API with background jobs processed by Sidekiq, fully covered with RSpec tests and deployed as Docker containers using Nomad. Our clients are our own mobile apps (iOS, Android) and web applications built with React. You should feel comfortable navigating it.

- Some experience with other programming languages. It can be Python, Node.js, Elixir, Go, Rust, Java, Kotlin - anything. What matters is that you’ve built real systems in more than one language. Parts of our services are written in Go, while reporting and ML-related tasks are handled in Python.

- Good understanding of databases. You should know your way around SQL (PostgreSQL in our case) and have some exposure to other data storage systems like Redis, S3 or Elasticsearch. You don’t need to be a database engineer, but you should understand how data behaves in real systems.

- Good understanding of infrastructure and willingness to learn more. We don’t have a separate SRE or DevOps team and we don’t split development from operations. This means you will be involved in how things are built, deployed and run in production. You should have a basic understanding of CI/CD, what a Dockerfile looks like, how containers are orchestrated and how a reverse proxy terminates TLS connections. You don’t need to be an expert, but these things should not feel unfamiliar.

- Readiness to work hard and smart, and to learn outside of your direct area of responsibility. You will build features, deploy them and support them. The team is compact and geographically distributed, and the business is competitive. Everyone is treated as an adult and has the opportunity to take ownership of parts of the system and drive them into production. Responsibilities grow over time, together with recognition and compensation. You won’t be thrown into everyth