In This Role You Will :
Implement application architecture in conjunction with the engineering leads.
Work with product managers, and engineering leads to understand application requirements, identify solutions, and determine feasibility & timelines
Build & deploy various microservices and APIs as well as develop applications that depend upon them
Follow best practices alongside your team for all aspects of the software development lifecycle, including process & conventions
Write unit test cases and follow code quality across entire engineering teams
Monitor API performance and suggest methods to improve
Provide support for resolving customer issues and finding root cause
Contribute to the continuous improvement of engineering processes and tools
Regularly communicate with engineering leads on project and delivery status
You’re a great fit if you have :
3+ years as a Software Engineer for a large-scale product
Great verbal and written communication skills horizontally and vertically
Experience with microservice architectures and understand scaling and concurrency concerns.
Built, deployed and managed high-performant backend APIs on Node JS
Followed coding best practices such as SOLID, Functional Programming or DDD
Working knowledge of Javascript and / or Typescript
Document your APIs with OpenAPI specification / Swagger
Data are stored in MongoDB / DynamoDB, MySQL / Postgres, and cached in Redis / Memcached
Deployed production services on Docker containers using Swarm / Kubernetes orchestration
Used application performance monitoring tools e.g. New Relic, Prometheus, DataDog etc
Used common tools for software development (Git, Slack, JIRA)
Built Payment / Rewards & Loyalty / Marketplace / e-Commerce / SaaS products
Experience with the Nest.js / Express Framework is a big plus
Hands-on experience with Amazon Web Services (AWS) toolset
Knowledge of RabbitMQ, Apache Kafka, AWS SQS
Experience working with a distributed team across multiple time zones