Apply

Senior Software Engineer, Distributed Systems

Posted 2 days agoViewed

View full description

💎 Seniority level: Senior, 5+ years

📍 Location: United States, Canada

💸 Salary: 139000.0 - 218000.0 USD per year

🔍 Industry: Software Development

🗣️ Languages: English

⏳ Experience: 5+ years

🪄 Skills: AWSBackend DevelopmentSQLJavaMongoDBMySQLAirflowAlgorithmsAmazon Web ServicesData engineeringData StructuresREST APIMicroservicesData modelingSoftware Engineering

Requirements:
  • 5+ years developing and deploying complex web applications, with a proven track record of shipping performant quality code.
  • Proficiency in Java, Python, or another high performance back-end language.
  • Experience working with high-performance real-time analytics, event processing, and large-scale distributed systems.
  • Strong data engineering skills, including experience with relational and non-relational databases.
  • Knowledge of REST APIs and event-driven architectures.
  • Can debug production issues across services and multiple levels of the stack.
  • Experience with testing frameworks (e.g. Jest, Mocha, Playwright, Cypress, TestNG).
Responsibilities:
  • Architect, design, and implement scalable multi-tenant backend services and APIs.
  • Work on technologies such as Java, MongoDB, Druid, Airflow, Amazon Web Services EC2, S3, Lambdas, RDS, and more.
  • Design and implement data processing pipelines that includes ingestion, transformation, storage, and query.
  • Work with Druid and other data stores to efficiently integrate and query large-scale event data.
  • Ensure system scalability and reliability by optimizing distributed architectures, caching strategies, and event-driven systems for low-latency performance.
  • Lead projects that directly contribute to team and engineering organization's deliverables.
  • Produce and elevate the quality of maintainable, tested, performant, and scalable code.
  • Build and maintain unit and integration tests.
  • Author, collaborate on, and evaluate design documents.
  • Influence technical designs and team-level prioritization as well as participate in technical solutions.
  • Collaborate with software engineers, product managers, and designers in an autonomous, supportive team environment.
  • Mentor other engineers in technical skills, best practices, and quality.
  • Participate in engineering citizenship activities such as co-authoring engineering blogs, strengthening and improving our hiring processes, and leading internal hackathon teams.
Apply