Skills
Job Description
As a Back End Software Developer, you'll join a close-knit team of engineers, product managers, and software developers to build the future of a platform destined to power immersive digital experiences for our customers and partners. We are looking for a diverse array of technical capabilities rooted in proven product experience with modern technology stack architecture. A solid understanding and expertise in developing SaaS platforms with a keen understanding of security and systems design, as well as deep expertise in API Design, microservices, distributed architecture, NoSQL, and RDBMS data storage. This role is responsible for developing next-generation, modern production systems. Personal performance, reliability, and commitment to delivering quality software are all core values for this role. Experience with developing Azure/AWS and hybrid solutions using modern architecture and design patterns is essential to being successful in this role.
Core Responsibilities:
- Collaborates with Product and Engineering stakeholders to design and build platform services that meet key product requirements
- Produces both high-level and detailed designs for platform-level services
- Authors clean, scalable, modular, secure, well-structured, and testable code
- Defines patterns and develops reusable components and libraries
- Designs and implements microservices with thoughtfully defined APIs
- Takes ownership of designed services and platform components from conception through to delivery
- Consistently delivers on Sprint commitments & agreed upon timelines by the team.
- Obsesses over QA automation
- Obsesses over CI/CD & DevOps
- Adheres to all industry best practices and standards for Agile/Scrum Frameworks adopted by the Organization including but not limited to daily stand-ups, grooming, planning, retrospectives, sprint reviews, demos, and analytics.
- Consistently delivers Quality code.
Key Technologies we use:
- C#
- .NET 6 / .Net Core
- Node.js
- Redis
- MongoDB
- Azure SQL Server
- Elastic
- RabbitMQ/ Azure Service Bus
- Swagger
- Kubernetes
- Docker
- Cosmos db
- Entity Framework
- Dapper
Basic Requirements:
- 5+ years of experience designing, building, and deploying high-availability backend services
- Ability to conceptualize end-to-end system components across a wide range of technologies and translate requirements into implementation
- Comfortable failing fast and working in a cross-disciplinary team environment
- A clear understanding of Functional and Object-Oriented programming paradigms, as well as their advantages and disadvantages
- Strong design and extensive implementation experience with C# and .NET core within a highly scalable production environment
- Experience with at least one type of queuing system (Apache Kafka, RabbitMQ, SQS, Service Bus etc.)
- Experience with at least one RDBMS (MySQL, PostgreSQL, RDS, SQL Server, etc.)
- Experience with at least one document-oriented DB (MongoDB, CouchDB, Cosmos DB etc.)
- Experience using, designing, and building Graph/REST/Web Service APIs
- Experience in Microservice Architecture – Async design patterns
- Fluency with the full software development lifecycle using Agile methodologies
- Documenting API using Open API 3.1 specs
- Comfortable in 1-week sprints
- Fluent in Spoken English.
- Fast Learner
Back End Developer Skills:
- 5+ years of relevant experience as a Back End Developer
- Expert in microservices, restful API
- Collaborates and works on tasks assigned by a Lead
- Provides support to Jr and peer developers
- Works with Leads and other stakeholders to define tasks and perform complex research spikes
- Supports other developers and architects through peering and mentoring
- Performs planning necessary to ensure reliability, scalability, and viability of products
- 2 recent years hands on coding experience in writing microservices in the cloud on a multi tenant SAAS applications that can scale horizontally.