Position: Software Engineer (Ruby, JavaScript)
Company: WeAreBrain
Category: Ruby
Experience required: 3y
English level: intermediate

Our client is the largest retail group in the Netherlands which owns and operates building materials stores across the Benelux

Our Kyiv-based teams are working on key Client’s digital platforms:
- online stores for the Netherlands & Belgium
- content management system
- community management platform for DIY fans
- online service for booking of visits of offline stores
- other cool products:)

These platforms are designed with a microservices architecture approach, for both back-end and front-end sides (40+ services)

**Ruby stack:** Ruby 2.4, Ruby on Rails 4, Rails MVC, Sidekiq, RSpec, AWS SDK, SNS, SQS, MySQL, Redis  

**JS stack:** React, Node.js, Jest, SSR  

**Infrastructure:** AWS, Docker, ECS (Amazon container management system), Bitbucket Pipelines (CI/CD), Ansible and Terraform (IaaC)

**Main requirements**
- A сomputer science, software engineering, or related field master's or bachelor's degree
- Solid knowledge of architectural patterns and programming paradigms (OOP, SOLID, DDD, etc.)
- Good knowledge about modern systems architecture components including networking, microservices, and distributed data processing systems
- Hands-on experience with common RDBMS (PostgreSQL, MySQL, etc.) and knowledge of DBs design
- 3+ years Ruby on Rails commercial programming experience
- Experience with Redis and Sidekiq 
- 1 year of middle layer/server-side logic development experience with JavaScript (Node.js, Express, Koa, ES6)
- Experience with build tools (Webpack, Babel)
- Experience with the writing of tests on Jest/RSpec
- A strong intermediate English proficiency with good communication skills

**As a plus**
- Hands-on experience with one of common JS frameworks React, Angular, Vue.js 
- Experience in the optimization of system performance
- Understanding of server-side rendering principles
- Hands-on experience with Amazon messages queuing/delivery services (SQS, SNS)
- Practical experience with infrastructure (Web servers, cloud services, containerization, monitoring, UNIX/Linux command line)

**Responsibilities**
- Actively participate in overall team meetings, architectural design sessions, product meetings, etc.
- Translate business requirements and feature requests into User Stories
- Create an architectural design to illustrate high-level solutions to an application and feature requests
- Contribute to overall product quality, be responsible for the tech stack, and the realization of microservices 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

**WeAreBrain offers**
- Full taxes compensation
- Accounting support & consulting
- Medical insurance
- COVID support (monthly financial contribution)
- Partial education compensation
- Paid time off (vacation, sick leaves, public holidays)
- Career path design, helping to reach out next promotion steps