Backend Software Engineer at Stream
🇳🇱 (Posted Sep 2 2019)
About the company
Stream is an API provider that allows you to build scalable feeds, activity streams and chat.
We are looking for a software engineer to join our development team as backend software engineer. Job duties will include working on Stream's core API technology, design and build high performance software.
What you’ll be doing
Most of your day will be dedicated to software design, research and coding. On typical projects you will have a lot of freedom and you will be paired with another team member. Our team is made up of very experienced engineers, some with >10 years of experience. By working together you will learn from each other along the way. You will have enormous impact on making our API service faster, more scalable and more flexible.
Stream has a casual social culture, our team is very diverse in age, nationality and we all have different backgrounds. Our team in Amsterdam is very focused, you will see us heads-down coding or drawing complex charts on whiteboards; until we pop up momentarily to have a chat or play merciless games of ping-pong. When it comes to software engineering our culture is oriented towards ownership and quality; our goal is to deliver stable software that focuses on solving only the right problems. While driven by ambitious visions we execute with great pragmatism.
Working at Stream, you will add new features to the service and find ways to make the existing ones perform orders of magnitude faster. Our customers have millions of users; they use Stream for mission critical features such as showing content and exposing core functionality of their application. Building stable and reliable software is not just an option; as a member of the development team you will design and write state of the art software, follow best-practices, measure everything and be responsible for its deployment to production. You will also spend part of your time talking to our customers and help them to use Stream in their app.
- Distributed databases, we built our own data store for feeds and for chat
- Realtime messaging
- High performance, our API responses are in the 10ms range
- High scalability, we use sharding, master-master and master-slave to ensure scalability
- High availability, our entire infrastructure is designed and operated to survive entire datacenter crashes
- Multi region, we deploy our service on 4 different continents
Our Amsterdam office is located in the TQ tech space in the heart of the city. It's a fantastic building with all the amenities you'd expect. There's a cafe upstairs, a shared lunch area and a sports room with table tennis and badminton.
Technology that powers Stream
At Stream we use a wide collection of technologies to offer highly optimized and available features to our customers. Over the years we have experimented with different programming languages, frameworks, databases and libraries. Here's a short list of the technology that we currently use. Don't worry if you don't master them all or if you don't see your favorite tool or language: you will have the chance to be exposed to most and to convince us on expanding the list
- Go, gRPC, RocksDB, Python
- Postgresql, RabbitMQ
- AWS, Puppet, CloudFormation
- Grafana, Graphite, ELK, Jaeger
- Redis, Memcached
The Hiring Process
1. First contact. We’ll tell you more about the company, the work that we do, and why we think Stream is a great place to work. This is a great time for you to ask us questions. We will also have some basic technical and practical questions to make sure we have a first match.
2. Tech interview. We’ll put you in the same room with our CTO and another team member for an in-depth technical conversations. We are going to challenge your practical abilities in areas like problem solving, web applications, database design and software design in general. You will not have to write code at this time.
3. In-person interviews. At this point we have a good understanding of your technical skills, it that looks like a good fit, we’ll bring you in to meet with the rest of the team.
4. The offer. If you made it this far, we are only a signature away from your first day at Stream!
Stream employees enjoy some of the best benefits in the industry:
- Competitive salary and equity
- Healthy lunches with the rest of the team
- Chance to meet our team in Boulder
- Great espresso coffee and teas
- Office location in the center of Amsterdam
- Be surrounded daily by a team of exceptional engineers
- Opportunity and support to attend and/or present to industry related conferences and meetups
- Opportunity to work on OSS projects
Skills & requirements
Golang, SQL, AWS