Requirement: Need a Senior Software Engineer, Backend (strictly backend and no frontend work)
Experience: 8+ yrs of relevant experience in the industry
Skills required:
- Typescript / Node.js (PHP with NodeJS would be a great combination)
- Mac OS, VS Code, GIT, Serverless framework
- Proficiency with AWS services (API Gateway, Lambda, EC2, ECS, RDS, S3, SQS, EventBridge)
- Proficiency in building RESTful services and API and follows best coding practices
- Experience with databases (Oracle/MySQL/PostgresDB/RDS & DynamoDB) – strong working experience in either of SQL or NoSQL DB but theoretical knowledge of both.
- Experience building scalable and resilient cloud services
- Experience working with observability tools like Datadog
- Ability to work independently on projects with little supervision.
- Should have experience in making technical decisions in high volume apps (100k+ users)
- Experience working with distributed team. Overlap of 2h time twice a week with the core team in US time zones (Pacific + Central)
- Strong communication skills (verbal and written)
Good to have skills:
- PHP (very useful)
- AWS service - Step Functions
- Payments/Subscription management, integration of payments gateways and providers
- Golang (low priority)
Project work:
- Area of work - Crunchyroll payments and subscriptions. Expectation is to start work on areas like operational excellence, business metrics, tech migration, etc. but as the confidence grows expected to work on product features.
- Old code is running on PHP with EC2 (being moved to ECS). The new code is on NodeJS using Lambdas and Step Functions.
Profile Screening Expectations:
- 8+ years relevant experience
- Limited job changes. At least 2 years spent in most companies worked on.
- Should have worked in applications with high volume traffic.
- Majorly worked on Backend API development
- Extensive DB experience
- AWS (or other cloud) exposure
- Works independently and can design and make technical decisions.
Interview Expectations:
- Should be able to make technical decisions and justify with prior technology experience (Whys & Whats?). Researches and communicates trade-offs while considering tech stack.
Example: Why is NodeJS used? Why use Redis?
- Database: Strong in one DB – either SQL or NoSQL. Knows about design, tables, columns, indexes, partition, etc. Should have handled problems when load increases – through query optimization, read replicas, sharding, etc.
Knows about common DB problems like – connection pool issues, CPU issues, failovers, etc.
Clear understanding of API latency, error rates, SLAs, TPS.
Should know when to use sync vs async in NodeJS
Should have worked on APIs where its performance is in milliseconds.
Has done application scaling. Ex. using load balancers (knows auto-scaling parameters, CPU, memory metrics, etc.)
- Testing: Clear understanding of the process of dev testing and how was quality code maintained.
- DevOps: Fair understanding and experience on DevOps (working knowledge of where/how an application is deployed is must)
- Team work: Should be able to share instances of disagreements/conflicts and how was it handled. Should have work experience on high volume/traffic applications (applications that support at least 100k+ users)
Location: Bangalore
Annual CTC: INR 24 - 27 LPA
Type: Hybrid
Candidate must be ready to take IInd round of interview face to face in Bangalore office.