Are you applying to the internship?
Job Description
Senior Software Engineer, Distributed Systems | [Company Name]
The Tone:
This is a full-time role at [Company Name], available in Remote / Hybrid (San Francisco, CA; Austin, TX; Seattle, WA). The company is a pioneering technology leader dedicated to transforming how businesses operate. It empowers enterprises with solutions that drive innovation, enhance efficiency, and unlock new opportunities through robust, scalable, and secure cloud computing and AI-driven analytics platforms that redefine industry standards. This Senior Software Engineer role is crucial for designing and building the complex, highly scalable, and fault-tolerant distributed systems that form the backbone of these core products.
The TL;DR
• Role: Full Time
• Type: Full-time
• Location: Remote / Hybrid (San Francisco, CA; Austin, TX; Seattle, WA)
• Team: Engineering
• Mission: Design, develop, and maintain complex, highly scalable, and fault-tolerant distributed systems that form the backbone of core products.
• Tech Stack: Java, Go, Python, C++, Scala, PostgreSQL, MySQL, Cassandra, MongoDB, DynamoDB, Kafka, RabbitMQ, SQS, AWS, Azure, GCP, Docker, Kubernetes
What You’ll Actually Do
• Lead the design, development, and implementation of highly scalable, reliable, and performant distributed systems and services.
• Architect solutions for data storage, processing, and retrieval that can handle massive datasets and high transaction volumes.
• Optimize existing systems for performance, reliability, and cost-efficiency.
• Collaborate closely with product managers, other engineering teams, and SRE/DevOps to define requirements, system specifications, and API contracts.
• Mentor and guide junior engineers, fostering a culture of technical excellence and continuous learning.
The Must-Haves
• Background: Bachelor’s or Master’s degree in Computer Science, Engineering, or a related technical field, or equivalent practical experience, with a significant focus on designing and building large-scale distributed systems.
• Experience: 5+ years of professional software development experience, with extensive experience in relational and NoSQL databases, and proven experience with messaging queues/brokers.
• Skills: Strong proficiency in at least one modern programming language (e.g., Java, Go, Python), deep understanding of distributed systems concepts (e.g., consensus algorithms, consistency models, fault tolerance), familiarity with cloud platforms (AWS, Azure, GCP) and containerization (Docker, Kubernetes), and excellent problem-solving abilities.
• Bonus: Experience with stream processing frameworks (e.g., Apache Flink, Spark Streaming), knowledge of big data technologies (e.g., Hadoop, Spark), familiarity with high-performance RPC frameworks (gRPC, Protocol Buffers), and previous experience in a tech lead or mentorship role.