Are you applying to the internship?
Job Description
Senior Software Engineer, Backend Systems
We are seeking a highly skilled and experienced Senior Software Engineer to join our dynamic backend systems team. In this role, you will be instrumental in designing, developing, and maintaining scalable, high-performance, and resilient microservices and APIs that power our core products and services. You will work on challenging technical problems, contribute to our architectural roadmap, and mentor junior engineers, playing a pivotal role in shaping our technology stack and engineering culture.
Key Responsibilities
- Lead the technical design and implementation of complex new features and systems, ensuring solutions are robust, scalable, and maintainable.
- Develop high-quality, clean, and efficient code primarily in Python or Go, contributing to our core backend services and infrastructure.
- Architect and build highly available, fault-tolerant systems using modern architectural patterns (e.g., microservices, event-driven architectures).
- Optimize applications for maximum speed, scalability, and security, identifying and resolving performance bottlenecks.
- Collaborate closely with product managers, front-end engineers, and other stakeholders to define requirements and deliver impactful solutions.
- Participate in code reviews, providing constructive feedback and ensuring adherence to best practices and coding standards.
- Troubleshoot and debug complex production issues, implementing effective solutions and preventative measures.
- Mentor and guide junior and mid-level engineers, fostering a culture of technical excellence and continuous learning.
- Contribute to the evolution of our technical roadmap, evaluating new technologies and recommending strategic improvements.
Required Qualifications
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related technical field.
- 5+ years of professional experience in backend software development, with a strong focus on building scalable web services and APIs.
- Expert proficiency in at least one modern backend programming language such as Python, Go, Java, or Node.js.
- Extensive experience with distributed systems, microservices architecture, and RESTful API design.
- Demonstrated experience working with cloud platforms (e.g., AWS, Azure, or GCP) including services like EC2, Lambda, S3, RDS, DynamoDB, etc.
- Solid understanding of data structures, algorithms, object-oriented design, and software design patterns.
- Proficiency with relational databases (e.g., PostgreSQL, MySQL) and/or NoSQL databases (e.g., MongoDB, Cassandra, Redis).
- Experience with version control systems, particularly Git.
- Excellent problem-solving abilities, strong analytical skills, and attention to detail.
- Exceptional communication and collaboration skills, with the ability to articulate technical concepts to both technical and non-technical audiences.
Preferred Qualifications
- Experience with containerization technologies like Docker and orchestration platforms like Kubernetes.
- Familiarity with message queuing systems (e.g., Kafka, RabbitMQ, SQS).
- Experience with CI/CD pipelines and DevOps practices.
- Knowledge of performance monitoring and logging tools (e.g., Prometheus, Grafana, ELK stack).
- Contributions to open-source projects or a strong portfolio of personal projects.
- Experience working in a fast-paced, agile development environment.
What We Offer
- Competitive salary and equity package.
- Comprehensive health, dental, and vision insurance with generous company contributions.
- Flexible work schedule and remote-friendly options.
- Unlimited Paid Time Off (PTO) and paid company holidays.
- Budget for professional development, including conferences, courses, and certifications.
- 401(k) retirement plan with company matching.
- A vibrant, inclusive, and collaborative company culture that values innovation and impact.
- Opportunities to work on cutting-edge technology and make a significant impact on our products and users.