The Knocker team runs the platform that is currently sending 1.1B+ notifications per week to millions of users. We work closely together with Product and Data specialists to design and develop top-of-the-line software products and provide the best experience to 16 different marketplaces. The notifications squad is looking for enthusiastic engineers who don’t shy away from big technical challenges to join the team and help bring the product to the next level.What you'll do:Help build state of the art systems that have real revenue-generating impactDesign and implement highly scalable solutions using the best development practises and toolsHelp further improve our development environment and communicate the best development practises within the team (i.e. code reviews, testing, etc)Continuously monitor the quality of our systems and design measurements to monitor their health (both the engineering systems and data integrity)Keep on top of the latest and greatest development trends in distributed systems and the cloudWork closely with other teams (Stakeholders, Data Science, Product and UX) at Adevinta to drive product developmentBe curious: experiment with new solutions yet be pragmatic and committed to code optimisation, maintainability and qualityQualificationsWho you are: ​​​​A creative person who can help us raise the bar, challenge our current setup and improve our solution – you love developing good quality softwareYou use your voice to provide feedback in a respectful way. Good written and spoken communication skills; technical and business level English is a mustA team player who loves celebrating success with the team but who is also ready to learn from mistakes in a safe environmentExperience with development best practises: Pair programming, code review, clean code, CI/CD preferably with experience in Travis and SpinnakerSomeone who understands quality should come by design and consistently writes Automated Tests (JUnit, Testcontainers, etc.)Familiar with REST APIs, and Microservices architectureExperience with or has the desire to learn Kotlin – it’s the main programming language we use, but any other JVM language is also acceptableExperience building and maintaining systems at scale: service discovery, load balancing, secret management, dynamic request routing, circuit breakers and deployment schemes (rolling updates, canary, etc.)Experience or understanding of cloud infrastructure is a plus: AWS EC2, CloudFormation, KubernetesExperience with high traffic systems and distributed systems and databases is also a plus