We are looking for a full time Backend Software Engineer to join our development team. Job duties will include working on Stream's core API technology as well as designing and building high-performance software. This role in open in both our Amsterdam (Netherlands) and Boulder (CO, USA) offices, and it's also available for full remote (CEST or close).
What you will 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 more than 10 years of experience. By working together you will learn from each other along the way. You will have an enormous impact on making our API service faster, more scalable and more flexible.
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 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
- Real-time 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
- Proficiency in Go
- 5+ years as a backend developer
- Experience with high traffic and high performance applications
- Good knowledge of relational databases
- Experience with building HTTP APIs
- Experience managing your own projects and work in a team
Our tech stack
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 is a short list of the technology that we currently use. Do not worry if you do not master them all or if you do not see your favorite tool or language, you will have the chance to be exposed to most and to convince us to expand the list:
- Go, gRPC, RocksDB, Python
- Postgresql, RabbitMQ
- AWS, Puppet, CloudFormation
- Grafana, Graphite, ELK, Jaeger
- Redis, Memcached
What we have to offer you
Stream employees enjoy some of the best benefits in the industry:
- A team of exceptional engineers
- The chance to work on OSS projects
- A competitive salary
- 28 days paid time off plus paid Dutch holidays
- Company equity
- A pension scheme
- A generous Learning and Development budget
- Commute expenses to Amsterdam covered or option to use a company bike within the city
- Gym membership of choice covered
- MacBook Pro or another development setup
- Healthy team lunches and plenty of snacks
- A generous relocation package
- An office in the heart of Amsterdam
- The opportunity to attend or present to global conferences and meetups
- The possibility to visit our office in Boulder, CO
Stream has a casual social culture, our team is diverse and we all have different backgrounds.
Our talented developers are highly technical and collaborative, which makes Stream a great place to learn and improve your skills. When it comes to software engineering our culture is oriented towards ownership and quality: our goal is to deliver stable software.
If you are interested in becoming a part of what we do, apply now!
No recruiters/agencies please
How to apply
Does this job really require Go skills? If not, please report it and we will take a look.