Position: Node.js TypeScript Back End Engineer
Company: Profit Whales
Experience required: 2y
English level: upper

What you will work on:
 - Solve business logic layer problems and implement solutions in code
 - Learn and research concepts, terminology and basic rules of Amazon 
 - Advertising and its API to better analyse business problems and deliver higher quality solutions to them
 - Develop code in TypeScript
 - Develop event-driven and synchronous solutions in microservice architecture
 - Design and develop REST APIs for our in-house software, like: API facades to access our proprietary Amazon Advertising tools; Admin panels functionality
 - Create new microservices that provide solutions for business problems
 - Write efficient SQL queries for data aggregation, filtering, sorting to display it on data tables, charts, dashboards, reports
 - Maintain existing SQL queries
 - Develop new and improve existing API client libraries (SDKs) to communicate with external (3rd party) services
 - Develop features with performance, scalability and maintainability in mind
 - Maintain existing back end solutions, improve it and fix arising issues
 - Contribute to architectural design discussions
 - Provide input and estimates for planning
 - Improve performance of the application
 - Develop and improve data access layer of the application
 - Improve project architecture
 - Suggest and integrate new back end technologies to improve development process and application architecture
 - Be involved in all phases of software development life cycle: from requirements gathering, problem analysis, solution design and development, testing, integration, and production support

We offer:
 - Flexible working hours
 - Remote-friendly environment
 - Comfortable modern office in Kyiv
 - Team of like-minded people who love what they do
 - Opportunities to develop and grow
 - No-bureaucracy culture: questions are resolved quickly, opportunity to influence processes with your ideas
 - Decent remuneration

Required Skills and Experience:
 - 2+ years of experience in Back end engineering
 - Strong JavaScript (ES6+) and Node.js (10+) knowledge (context, arrow functions, data types, promises, synchronous and asynchronous nature of JS, streams)
 - Proficiency in TypeScript (background of strongly typed languages like C#, Java would be a plus)
 - Strong knowledge of SQL (MySQL)
 - Experience in working with Sequelize ORM
 - Knowledge of OOD, OOP principles and design patterns
 - Experience in integrating third-party APIs into the project
 - Familiarity with event-driven architecture principles, microservices
 - Basic knowledge of Git, Docker, docker-compose
 - Experienced in reviewing and debugging code
 - Analytical skills
 - Research and problem solving skills
 - Able to work without supervision while staying on task
 - Upper-intermediate English level (must)