Position: Full-stack Software Engineer (React/Node.js)
Company: WeAreBrain
Experience required: 2y
English level: intermediate

**Who we are and what we do**

Our client, Maxeda, is the largest retail group in the Netherlands which owns and operates building materials stores across the Benelux

Our Kyiv-based team is working on the custom development of a digital platform that serves the Client’s online stores for the Netherlands & Belgium

**Focus areas** 
— CMS for content managers
— product-related services
— search engine integration and services around it

This platform is designed based on microservices architecture (using an event-driven programming paradigm). Currently, the platform contains 40+ services

**Platform tech stack:** React, Node.js, SSR, Jest, Java, Spring, Hibernate, JUnit, SNS, SQS, PostgreSQL, DynamoDB

**Infrastructure:** AWS, Docker, ECS (Amazon container management service), Bitbucket Pipelines (CI/CD), Ansible and Terraform (IaaC)

**Who we are looking for**

We are looking to hire a Full-stack Software Engineer to join our team. Our ideal candidate should have a strong technical background with deep expertise in middle layer/server-side logic development with JavaScript (Node.js and React) and a strong willingness to deal with microservices

**Core requirements**

— 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.)
— Good knowledge of modern systems architecture components including microservices, event sourcing, and distributed data processing systems
— Hands-on experience with common RDBMS (PostgreSQL, MySQL, etc.) and knowledge of DBs design
— 2 years of middle layer/server-side logic development experience with JavaScript (Node.js, React, Express, ES6)
— Understanding of server-side rendering principles
— Hands-on experience with state management libraries (Redux)
— Experience with build tools (Webpack, Babel)
— Experience with the writing of unit tests
— A strong intermediate English proficiency with good communication skills

**As a plus**

— Experience in backend development with Java, Spring
— Hands-on experience with messages queuing/delivery services (Amazon SQS, SNS, RabbitMQ, Kafka, etc.)
— Practical experience with infrastructure (Web servers, cloud services, containerization, UNIX/Linux command line)
— Experience in the optimization of system performance and understanding of monitoring systems and key metrics evaluation and analysis

**We are offering**

— Full taxes compensation
— Accounting support & consulting
— Medical insurance
— COVID support (monthly financial contribution)
— Partial education compensation
— English classes
— Paid time off (vacation, sick leaves, public holidays)
— Career path design, helping to reach out next promotion steps
— Cool Friday’s parties in Creative Quarter:)

**Responsibilities**

— Collaborate closely with Maxeda’s development & infrastructure teams in Kyiv, the Netherlands, and Belgium
— Actively participate in architectural design sessions, overall team meetings, product meetings, communities of practice, etc.
— Create an architectural design to illustrate high-level solutions to an application and feature requests
— Translate business requirements and feature requests into User Stories
— Contribute to overall product quality, be responsible for the front-end and middle layer stack, and the realization of a microservice’s architecture
— Deliver 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