years ago, we started as an SMS messaging company in Amsterdam. Today
we’re serving SMS, OTT Chat and Voice services to SMB, enterprises and
governments all over the world. We’ve built all our software in-house
and are looking for bright, enthusiastic and eager software developers
to contribute to the next part of our codebase and to expand and scale
our services. Our development and engineering team is located at our
Day of a software developer at MessageBird
You start your day with a fresh coffee, tea or fresh pressed juice. You discuss the latest technology news with your colleagues and start working on an issue from the selected-for-development column of the project’s KanBan board. Our issues are specced and detailed by product managers and owners, but are open for technical contribution and insights.
During the lunch break, you enjoy a healthy, nutritious meal cooked by our lunch chef and have a chat with your (non-)tech colleagues.
After lunch, you decide to switch to
one of the standing desks at the office and continue working on an
awesome feature that enables our customers to send messages more quickly
and easily. You complete your newly written code with tests - or create
acceptance tests before - and assign the issue for review to one of
your colleagues. When your code is reviewed and our CI pipeline
indicates it’s working, your change is scheduled for deployment.
- Refactoring legacy parts of the system to sustain team and company growth. From a purely technical perspective this means introducing modern libraries and approaches into a system that handles heavy traffic in a safe way. What is more important, is educating the rest of the team about this.
- Designing a fault-tolerant performant system. We strive for minimal down-time while also processing big spikes in traffic and continuously deploying changes. For this our application needs to be highly-available and that requires certain knowledge when designing systems.
- Teaching others. One of the most important roles of a senior engineer is improving the knowledge level of the team.
- In-depth knowledge of software design
- Experience with refactoring legacy systems
- Experience with test-driven development
- In-depth knowledge of Symfony components
- Grasp of high-availability infrastructure concepts
- Proactive attitude
- Team player
- Able and willing to teach others
- Experience with Domain Driven Design
- Experience with high traffic systems
- In-depth knowledge of MySQL
- Experience with Docker