


The engineering team at cargo.one is pivotal in creating, maintaining and developing the cargo.one experience. From building our core product to extending self-service tools internally, our engineers are driven to solve problems that have never been tackled before in the industry.
2 open positionsWe are building a SaaS-enabled marketplace in the air freight industry. On the supply side we work with different airlines all over the world. Our platform maintains a technical integration with each airline which enables us to access routing information, live rates and live capacities from our partners.
On the demand side we are serving freight forwarders which manage the complete supply chain for their shippers combining road, rail, ocean and air. Our freight forwarder customers can access the cargo.one SaaS product to compare offers from the different airlines, book them directly through us and track them from the moment the freight is handed over to the airline until it is successfully picked up again at the destination airport.
Our frontend applications are a mix of Python and Javascript. The flask framework serves as a server-side component, managing the session and serving as a proxy between the backend services and the Javascript layer.
On top of this we are running single page applications based on the Vue.js ecosystem and ES6. We are utilizing a number of tools from crossbrowsertesting to Sentry to ensure quality. Fullstory and Google Analytics help us to understand user interactions and drive the experience in the right direction.
We firmly believe in a service-oriented approach when structuring an application. Python is our main language for backend services and Postgres serves as our default choice for data persistence. All services offer synchronous APIs based on the GRPC framework which means that messages are encoded in protocol buffers, transported with HTTP/2.
From an architectural perspective synchronous APIs are awesome because they are easy to reason about. On the other hand they can be limiting and lead to strong coupling and request chains going through the system. We are mitigating this by orchestrating service interactions through Apache Airflow.
The raw computing power of cargo.one is supplied by the Google Cloud Platform, most of the hardware we utilize runs in their data centers.
Every piece of our software is packaged as a container. The packaging is done on separate build systems with build pipelines based on Gitlab CI. We are strong believers in the Kubernetes ecosystem and use it as the foundation upon which we run our containers. Combined with tools and systems for tasks like centralized logging, monitoring, or credential management designed for a cloud-native environment, our infrastructure allows for fast iteration by not standing in our way.
We're utilizing the Scrum framework with 2-week sprints and we stay close to the Scrum Guide with additions and adjustments to the process where necessary. Every member of the development team is equally required and called upon to display leadership and help the team to succeed.
Day 1
Sprint Planning
At the start of every sprint, the development team sits down with the product owner to go through the backlog.
Discuss upcoming work and ask questions
Discuss high-level solutions and estimate work
Plan upcoming sprint
Breakdown tasks in sprint
The Scrum framework promotes self-organization within the development team during the sprint. As a consequence it is up to the team how the stories are approached.
Day 2
Conduct daily scrum
Day 7
Product Backlog Refinement
In the refinement we go through new tickets in the product backlog that could become relevant in the near future. We clarify requirements, improve ticket quality and estimate the difficulty
Review finished tasks with relevant stakeholders along the way
Day 14
Sprint Review
At the end of every sprint, the development team sits down with all relevant stakeholders to inspect the results of the sprint.
Sprint Retrospective
The development team reflects on the past sprint and identifies things that went well and things that could be improved in the next sprints.
While it sometimes can make sense to take things slower and get it right on the first try, we generally tend to try things out and throw them away if they don't work rather than doing an elaborate pre-study first.
Adapting to changing circumstances is difficult enough, so we work hard on not losing ourselves in dozens of different topics. If everything is important, nothing is.
Even though we try to plan ahead and figure out what is going to be relevant in the near future, things can change rather rapidly and we have to adapt to those situations.
There is no defined and structured process for every task that has to be done. We count on our employees to figure it out.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
Interested in working alongside a diverse team using agile methodologies?
Check out the open positions in our engineering department!
Backend Engineer
CTO & Founder
Frontend Engineer
Backend Engineer
We want you to understand the industry, the product and our customers. We want you to understand why we are doing what we are doing.
While you will spend most of your time with your Scrum team working on the sprint, we want you to keep an eye on the company objectives and what the other departments are doing and contribute your ideas and thoughts to make better decisions.
"I’m proud to be working on a project that uses modern technologies to lead an industry into a digital future with a team of professionals who care about healthy development processes."
Yaroslav Nezval
Backend Engineer
We want you to understand the industry, the product and our customers. We want you to understand why we are doing what we are doing.
While you will spend most of your time with your Scrum team working on the sprint, we want you to keep an eye on the company objectives and what the other departments are doing and contribute your ideas and thoughts to make better decisions.
We are currently growing our tech team! Check out the open positions we have and if you are up for the challenge, please apply and send all relevant documents to jobs@cargo.one
View Open PositionsWe're hiring remotely!