Position: Tech/Team Lead Backend Developer (Java)
Company: WeAreBrain
Experience required: 5y
English level: upper

OpenDairy is founded by a team of dairy specialists and technology entrepreneurs. Aiming to revolutionise the commodity trading industry through combining market knowledge and IT, OpenDairy was founded to make commodity transactions easy, transparent and accessible for all market players.
The business side of the platform is focused on making transactions easy and transparent while being accessible for all market players. The service side is aimed at providing logistics, insurance, and finance services of industry leaders so that users of the platform can focus on their core business. Learn more about our platform and company.

**Who we are looking for**
To enable and facilitate the growth of our organisation, we are looking to hire a Tech Team lead to join our growing team at OpenDairy. Our ideal candidate should have strong soft skills: team player, proactive in communication, able to make decisions and take responsibility for it, a person who truly believes that it’s better to prevent issues than to fix them. From the hard skills perspective, you should have a technical background with deep expertise in backend development within Java and Spring framework and willing to deal with modern approaches such as services/microservices architecture, serverless and event-driven development.

**Responsibilities**
- Collaborate closely with founders, partners, and clients’ representatives
- Collaborate closely with the extended design and development teams
- Create an architectural design to illustrate high-level solutions to application and feature requests
- Contribute to overall product quality, own and improve the technology stack, and be responsible for the realisation of a services/microservices architecture
- Actively participate in overall team meetings, architectural design sessions, product meetings, etc.
- Translate business requirements and feature requests into User Stories
- Deliver and document high-quality, testable, and maintainable code, as well as review code written by others
- Improve the code quality and delivery approach using best practices
- Deploy applications on cloud servers using automation services

**Tech stack**
- Java version: 11
- Spring Boot : 2.3.9.RELEASE
- Spring Cloud Version '2.2.6.RELEASE'
- QuerydslVersion '4.4.0' (library QueryDSL which used to get information from database)

**Requirements**
**Essentials**
- A сomputer science, software engineering, or related field master's or bachelor's degree is a must
- Solid knowledge of architectural patterns and programming paradigms (OOP, SOLID, DDD, etc.)
- Hands-on experience with services and/or microservices architecture
- At least 3 years of commercial backend development experience within Java and Spring framework (Data, Security, MVC)
- Hands-on experience with common RDBMS (PostgreSQL, MySQL, etc.) and knowledge of DBs design
- Strong practical experience with the Hibernate framework
- Experience in the optimization of system performance (memory usage, cache optimization)
- Experience with the writing of tests on JUnit
- At least strong intermediate English, willingness to learn Dutch would be great and supported by the team

**As a plus**
- Strong theoretical understanding or practical experience with NoSQL databases
- Experience or knowledge of real-time communication within WebSockets
- Hands-on experience with message-broker/stream-processing software RabbitMQ/Apache Kafka or Amazon services (SNS, SQS)
- Practical experience with infrastructure (web servers, cloud services, containerization, etc.)
- Experience in building or working on marketplace platforms

**What you can expect:**
- A young, vibrant and fast-growing startup environment, with plenty of room for self-development;
- Dedicated team members with one joint goal: to make OpenDairy the trading standard in the dairy industry;
- Professionally and personally grow in the multicultural environment: available educational budget, regular knowledge sharing sessions, international atmosphere, work remote as well as in our Amsterdam or Arnhem office;
- Keep your work-life balance: we offer unlimited vacation days, e-transportation if/when required, regular team-building events, and Friday drinks in the office;
- Have financial strength: a competitive salary and opportunity to participate in the company option scheme.