Position: Back-end Developer NodeJS (Long Term Project)
Company: abz.agency
Category: Node.js
Experience required: 1y

**IMPORTANT!** Relevant for 12 of September 2023. 1 position vacant.

For a Long Term Project we are looking for a Back-end Developer with 1+ years of experience. Project is already in production for several years and has thousands of RPS. You will work in a dedicated team for this project (~15 team members currently). Communication and technical documentation is in English only (written English required). The client and his team are strong technical specialists, the tasks on the project are interesting and complex. High load, high responsibility, a lot of work (100% workload). Sounds interesting? Then we are waiting for you!

By clicking on the link (company name) in the vacancy header, you can find brief information about our company, video, photos, contacts of the HR manager and a link to our website.

**Test assignment**
- Implement simple REST API server as defined in the API documentation.
- The Company may, at its sole discretion, not provide applicants with the reason for being rejected and technical details of the test completed.
- Once getting to the 3rd stage of the interview, the candidate will have the opportunity to receive a feedback from a technical specialist regarding your test task including technical details.
- Link to the test task by request.

**Our working conditions**
- Our offices are well equipped power outages: gasoline generator, EcoFlow Delta portable power station provides electricity for devices and standby lightning, Fiber optic internet provider, Starlink provide access to the internet;
- First month will be a paid probation period;
- Probation period paid as fixed monthly payment in UAH;
- Always stable and on time salary;
- Hourly rate is set in $;
- Official employment (by contract);
- Full work load of 160−200 hours per month and hourly rate ensuring all (extra) hours are paid;
- Regular revision of the hourly rate;
- Quarterly bonus, project performance based;
- English classes 2 times per week (groups of two people, after work hours);
- MacBook Pro 13/16, 4K monitor, stand, mouse, keyboard, headphones, comfortable chair, company branded T-shirt and mug;
- Working day from 8:00 to 17:00 (The plan for the day is made at the stand-up meeting and must be accomplished (considering common sense) within the day according to the checkpoints. After accepting the work, the PM finalizes the working day);
- Breakfast, lunches and other things in the kitchen at the expense of the company (coffee, tea, cookies, sweets, yogurts and drinks in the refrigerator);
- Work in one of our offices: K1/K4 — 7 minutes from Osokorki metro station, K5 — 2 minutes from Slavutych metro station, K2 — 8 minutes from Lukianivska metro station or 15 minutes from Kontraktova Square metro station, K3 — 7 minutes from Taras Shevchenko metro station.

**Requirements**
- 1+ years of experience;
- Strong knowledge of Node.js;
- Strong knowledge of JavaScript and Typescript;
- Experience with relational databases (particularly PostgreSQL);
- Experience with NoSQL databases (Redis, InfluxDB);
- Experience working with Git and pull requests;
- Understanding basic design patterns and being able to apply them;
- Understanding of CI/CD processes.

**Nice to have**
- Knowledge of the NestJS framework;
- High-loaded applications experience;
- Experience in working with large data sets, statistics;
- SQL queries optimizing experience;
- Minimal frontend development experience;
- Browser extensions development experience;
- Experience with canary deployments;
- Out-of-the-box thinking :)

**Project technology stack**
- Typescript / NestJS;
- PostgreSQL;
- Redis;
- Influx DB;
- Heroku / AWS / GCP;
- Kubernetes;
- Cloudflare workers;
- Grafana;
- New Relic;
- React / Vue.js;
- Pug / SCSS;
- Webpack;
- Adguard SDK;

**Opportunities/benefits**
- Each employee has a mentor and together with him develops an PDP (Personal Development Plan) to improve skills and knowledge in different areas;
- Revision of the hourly rate happens every six months and depends on the implementation of the PDP and other performance indicators;
- Opportunity to learn/improve skills in NodeJS, modern frontend frameworks like Vue/React or browser extensions development as part of the PDP (personal development plan) program. Depending on your PDP direction and (if you like to) you can switch later to fullstack developer role, pure frontend developer role or browser extension developer role;
- Experienced colleagues ready to help with complex tasks;
Technically savvy PMs who do task decomposition and know how to work with both the client and developers. No broken telephone game and no estimates handed down from the top;
- Mandatory peer code review and test coverage of important functionality, efficient QA process and task acceptance procedures;
- Opportunity to study related areas/technologies (frontend, browser extensions) — not abruptly, but systematically as if working on a complete mini-project; being guided by a mentor and according to a plan drawn up with a mentor, with each task passing code review and QA process, etc.