Position: Staff Software Engineer (System, Scalability(Netherlands)
Company: Miro
Experience required: 5y
English level: upper

About the team
The System team is one of the teams that provide the internal platform for hundreds of internal developers. We are responsible for service-to-service communications, client-server communications, user authentication, and chassis for microservice and monolith applications. We do everything possible to ensure that our service is stable in the face of constant user growth including on-call and incident management. Our goal is to provide a reliable, scalable, and convenient platform for the internal developers to let them think more about the business value than technical difficulties.

Each role at Miro is based at one of our physical hubs and we look for talent that want to be part of these local, collaborative communities. Mironeers work in a hybrid model, with a 3 days a week in office culture as our baseline.

Our Systems Team is a part of Stability & Scalability stream. To learn more about this stream please watch the video.

About the role 
We are looking for a top-tier software engineer with a strong background in Java and microservices-related technologies including API Gateways, Service Meshes, Service Discovery, peer-to-peer, and message broker communications. We are expecting that you have experience in designing and implementation microservice architecture on an organization-wide level. 

In this role, you will participate in defining how the microserivce architecture will look like for Miro with other specialists and lead the development of it in the System teams.

What you’ll do
Design and implement scalable and high-performing solutions
Identify commonalities between software components and improve the efficiency of development and code maintenance
Design and provide solutions for service-to-service and client-server communications for microservices
Research and build PoC for different solutions for microservices architecture including API Gateway and Service Mesh
Review technical solutions from other development teams to ensure the usage of standard methodologies of working with microservices
Invest in the growth and development of other engineers, participate in onboarding and mentorship 
Contribute to on-call and incident management process provide the highest SLA for the services that the team is responsible for 
What you'll need 
10+ years of software engineering experience with at least 4 years in a senior role
Experience building, launching, and running mission-critical, high-performance, distributed, fault-tolerant systems
Proved experience in building microservice architecture for hundreds of developers and services
Strong background in Java/Spring
Strong background in microservice related technologies (k8s, Service Mesh, Service Discovery, API Gateways)
Strong background in different message brokers and peer-to-peer transports
What's in it for you
Stock Option Grant
Medical Insurance coverage
Allowance to facilitate remote working during WFH period
Weekly remote team activities to keep the spirits high
Opportunity to work for a truly global multicultural team
Lunch, snacks and drinks provided when back in the office.