Position: Senior Back-end Node.js developer
Company: Perfectial
Category: Node.js
Experience required: 5y
English level: intermediate

Required skills

We are looking for a Senior Back-end Node.js developer who loves to build and design great products. We want someone who is up for taking on new challenges, keen on learning new skills, willing to compromise, and not afraid to fail. If you love challenges and problem-solving, this position is for you!

Hard-skills requirements:
5+ years of development experience
Solid development experience in one of the following languages: Node.js (TypeScript) or Golang
Experience in either software architecture, database administration, high load environments, refactoring and debugging, fast prototyping or any combination of that
Experience with gRPC framework and proto buffers
Experience with event-based architecture (MQ/Kafka/Google PubSub)
Experience with TDD/BDD and continuous integration processes (CI/CD)
Experience with relational and non-relational (e.g., PostgreSQL, Redis, etc.) databases.

As a plus

Experience with GraphQL endpoints development is a plus
Experience with GСP or AWS would be a plus
Experience in DevOps of any kind is a great plus
Familiarity with Docker and Kubernetes

We offer

Collaboration with highly motivated, talented, and inspirational team members.
Challenging and interesting software projects, not just tedious routine work.
Extensive remote work possibilities and flexible working schedules.
Unforgettable team buildings in different countries.
Business trips abroad.
Educational programs in English, as well as paid seminars, masterclasses, trainings, and world-class conferences.

Responsibilities

You will be helping those around you to grow and be successful as software engineers
Get inspired on a daily basis, think of new ideas, and prepare to share them with others
Use data or reliable source of information to drive the decision making during discussion, design or implementation phases
Have the ability to take on complex problems, learn quickly, and persist towards a good solution
Be conscious about the speed of delivery vs quality of code and find the best balance