Job Description
Main Responsibilities:
- Maintain, design, and develop high-volume, low-latency, high-available, and performant APIs.
- Continually monitor product performance and lead the team in improving scalability.
- Discussing the tradeoff between software architectural choices, both on a theoretical level and on an applied level.
- Collaborating in quarter planning, planning sprints, and participating in retrospective meetings.
Skills and Qualifications:
- Deep knowledge of CS concepts, problem-solving strategies, algorithms, and data structures.
- Deep understanding of database concepts and experience with relational and NoSQL databases.
- Deop understanding of queueing and prioritization and experience with message queues like Nats, and Kafka.
- Proficiency in NestJs and ExpressJs.
- Experience developing microservice/service-oriented applications.
- Experience in improving service applications through some combination of unit tests, load/performance tests, integration tests, continuous deployment, and monitoring.
- Good debugging skills
- Willingness to contribute in all phases of the development lifecycle.
- Stay up-to-date with new technologies and best practices.
- Support continuous improvement by investigating and exploring alternative technologies for architectural review.
- Comfortable with Postman, Browser Console, and Inspector.
- Proficiency in version control systems (e.g., Git).
- Deep understanding of RESTful APIs.
- Good product intuition and understanding of how your technical contributions will create value for the customers and impact their experience.
Optional Qualifications:
- Proficiency in Typescript.
- Experience in backend development under heavy load.
- Experience with platforms and Matching engines.
- Familiarity with cloud platform technologies, including Kubernetes (k8s), S3, and Docker.
- Knowledge of web-3 and blockchain technologies.
- Experience in Linux or Unix operating systems.