D

Staff Software Engineer, Backend

DISCO
Full-time
Remote
Worldwide

CS DISCO is aimed at redefining the landscape of legal technology. Ultimately, we seek to enable lawyers to achieve more efficient, data-oriented, and fact-based legal outcomes. We started our journey as a company by focusing on the crucial 'discovery' phase of the legal process. One of our offerings, Ediscovery, focuses on enabling legal teams to achieve these outcomes with incredible efficiency.

The massive data proliferation over the last decades has revealed the limitations of many legal technology products, impacting the efficiency of legal practices. At CS DISCO, we strive to provide solutions to the legal domain that are magical. To do so requires the processing of large volumes of data at petabyte scale, with high availability, while maximizing performance, minimizing operations cost, and also ensuring data security, privacy, and sovereignty.

Our overarching mission is to create a unified technology platform for the practice of law. We envision a suite of products focused on delivering distinctly better legal outcomes with a minimum of human toil and cost. Our technology addresses the challenges of scale in data and enables legal teams to focus on the critical tasks that necessitate human legal judgment.

With a trajectory that has already seen substantial disruption in this market, our approach is underscored by a lawyer-inspired interface and a cloud-enabled technology platform, aiming for exemplary performance and cost efficiency. Thoughtful product planning and design are ingrained in our “product first” business ethos and culture, aligning with the broader objective of enhancing the practice of law through technology.

Your Impact:

You will be a key contributor and responsible for both hands-on technical work to improve existing systems as well as guiding long-term evolutions in this space. You’ll be successful by ensuring that the product and its backend systems meet current and future functional and scaling demands. Through your contributions towards both implementation and system design, you will play a pivotal role in maintaining and evolving our software systems to meet the growing demands of our business, ensuring high availability and high performance.

What You'll Do

  • Engage actively in coding, code reviews, and technical discussions, ensuring high-quality output.
  • Lead the design, development, and maintenance of scalable, high-performance, easily modifiable distributed systems.
  • Continuously enhance system performance, focusing on meeting customer needs using the best practices for designing scalable distributed systems.
  • Share knowledge and mentor junior engineers, promoting a culture of technical excellence and continuous learning.
  • Collaborate closely with cross-functional teams to translate business requirements into robust technical solutions.

Who You Are

  • 10+ years of relevant experience in backend engineering, with a focus on building large scale, highly responsive, fault tolerant services in SaaS and cloud-based applications.
  • Strong experience with building highly reliable, highly responsive services backed by relational and non-relational data stores.
  • Demonstrated expertise in designing, implementing, and maintaining (through operational observability) highly available, high-performance, distributed systems.
  • Proven ability to deliver well-crafted, tested, and maintainable code solutions to complex technical challenges.
  • Experience with multiple software stacks, have opinions and preferences, but are not tightly coupled to a specific stack.
  • You’ve delivered cloud native software solutions (including designing, implementing, and operational excellence).
  • Experience in implementing RESTful APIs for outward-facing services and using gRPC for efficient internal service-to-service communication.

Even Better If You Have…

  • Experience with designing, modifying, and operating multi-tenant systems.
  • Familiarity with designing and developing from a security perspective with security best practices in system design and development.
  • Demonstrated proficiency in multiple programming languages, including but not limited to Python and Kotlin/Java.
  • Strategic level interaction with UI Developers.

Some Of Our Technology Stack

  • Cloud Provider: AWS
  • Persistence: Sql Datastore, Elasticsearch, and others
  • Container Orchestration: ECS, Kubernetes
  • Transport: gRPC, GraphQL
  • Persistence: Elasticsearch, DynamoDB, PostgresQL, Redis
  • Event Bus: Kafka
  • Languages / Frameworks: Kotlin / Netflix DGS, Python / Flask, .NET
  • IaC: Terraform

domain that are magical. To do so requires the processing of large volumes of data at petabyte scale, with high availability, while maximizing performance, minimizing operations cost, and also ensuring data security, privacy, and sovereignty.

Our overarching mission is to create a unified technology platform for the practice of law. We envision a suite of products focused on delivering distinctly better legal outcomes with a minimum of human toil and cost. Our technology addresses the challenges of scale in data and enables legal teams to focus on the critical tasks that necessitate human legal judgment.

With a trajectory that has already seen substantial disruption in this market, our approach is underscored by a lawyer-inspired interface and a cloud-enabled technology platform, aiming for exemplary performance and cost efficiency. Thoughtful product planning and design are ingrained in our “product first” business ethos and culture, aligning with the broader objective of enhancing the practice of law through technology.

Your Impact:

You will be a key contributor and responsible for both hands-on technical work to improve existing systems as well as guiding long-term evolutions in this space. You’ll be successful by ensuring that the product and its backend systems meet current and future functional and scaling demands. Through your contributions towards both implementation and system design, you will play a pivotal role in maintaining and evolving our software systems to meet the growing demands of our business, ensuring high availability and high performance.

What You'll Do

  • Drive the definition and evolution of our architecture using Distributed Domain Driven Design practices.
  • Provide project-embedded architecture consultation to promote best practices, design patterns and informed buy vs build decisions.
  • Contribute to the prioritization of platform capability improvements across features and data platforms.   
  • Collaborate with stakeholders to build consensus when necessary, ensuring alignment on architectural decisions.
  • Contribute leadership, understanding and lessons learned to the greater DISCO platform in these areas.

Who You Are

  • 15+ years of relevant experience in backend engineering, with a focus on building high volume distributed technical architectures in SaaS and cloud based applications
  • Experience with “Big Data” technologies such as: Elasticearch, NoSQL Stores, Kafka, Columnar Databases, Graph Datastores
  • Experience leveraging common infrastructure services like enterprise message bus platforms, configuration services, toggle management systems, and observability systems like logging and distributed tracing systems.
  • Experience with domain driven design concepts and practices such as bounded contexts, event storming, specification by example, etc.
  • Possess an understanding of how to design and develop from a security perspective.
  • Experience with multiple software stacks, have opinions and preferences, and not be married to a specific stack.
  • Possess the ability to design and communicate external and internal architectural perspectives of well-encapsulated systems using patterns such as architecture/design patterns and sequence diagrams.

Even Better If You Have…

  • Advanced degree in computer science, software engineering, or similar
  • Experience in designing, modifying and operating multi-tenant systems.
  • Experience with data query and manipulation language such as GraphQL
  • Knowledge of API / Data Model Design and Implementation, including how to scale out, make highly available or map to storage systems.
  • An understanding of how to identify, select and extend 3rd party components for operational leverage but do not constrain product and engineering creativity.

Some Of Our Technology Stack

  • Cloud Provider: AWS
  • Persistence: Sql Datastore, Elasticsearch, and others
  • Container Orchestration: ECS, Kubernetes
  • Transport: gRPC, GraphQL
  • Persistence: Elasticsearch, DynamoDB, PostgresQL, Redis
  • Event Bus: Kafka
  • Languages / Frameworks: Kotlin / Netflix DGS, Python / Flask, .NET
  • IaC: Terraform

Perks of DISCO

  • Open, inclusive, and fun environment
  • Benefits, including medical and dental insurance
  • Competitive salary plus discretionary bonus
  • Opportunity to be a part of a startup that is revolutionizing the legal industry
  • Growth opportunities throughout the company

 

About DISCO

DISCO provides a cloud-native, artificial intelligence-powered legal solution that simplifies ediscovery, legal document review and case management for enterprises, law firms, legal services providers and governments. Our scalable, integrated solution enables legal departments to easily collect, process and review enterprise data that is relevant or potentially relevant to legal matters. 

Are you ready to help us fulfill our mission to use technology to strengthen the rule of law? Join us! 

We are an equal opportunity employer and value diversity. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.