We are looking for an ambitious, experienced, driven and solution orientated individual that thrives in a fast-paced, cutting-edge, technology-driven environment. You will be an integral part of our product and platform development team, collaborating with multiple teams to deliver high-quality and highly scalable products.
Requirements:
- 4+ years of medium to large scale server-side software development experience.
- Strong working knowledge of a backend programming language like Clojure and Java in production.
- Thorough knowledge of CS fundamentals: Data structures and time complexity of algorithms.
- Knowledge of system design and architecture.
- Experience in working with any one of YugabyteDB, Redis, Elasticsearch, Kafka or Postgresql.
- Knowledge of Posix compliant operating systems (we develop on Mac OS X and deploy on GNU/Linux).
- Comfortable using CLI tools for achieving day-to-day tasks.
- Efficiency with code editor of choice.
- Experience in writing unit and integration tests.
- Excellent problem-solving skills and a proactive approach to issue resolution.
- Excellent verbal and written communication skills.
- Bachelor's degree in Computer Science (or equivalent).
Responsibilities:
- Work on the Resiliency, Availability and Latency of our Core platform and services that are delivered to 820M monthly active users and can scale to 100K+ RPS.
- Work with multiple databases and ensure scalability for the interacting platform components.
- Take ownership and publish (internal) reusable services and APIs.
- Enable feature teams to use the Core platform.
- Write clean code with proper test coverage.
- Review others code and ensure that it is up to organization standards.
- Mentor junior members of the team.
- Optimize application for maximum speed and scalability.
- Participate in the hiring process.
- Keep calm and learn every day.
Nice to Have:
- Knowledge of frontend development and tools, especially JavaScript and React.
- Knowledge of functional programming is a plus (we use Clojure).
- Experience with benchmarking systems for performance, and failure detection.
- Experience in working with any of the above databases at scale is good to have.