Comprehend is hiring a

Backend Engineer

Redwood City, United States

Comprehend Systems has built a SaaS platform that improves and accelerates clinical trials to help bring new, safer treatments to market sooner, and that really *will* change the world.

Who are we? We're a down to earth group that loves React, Scala, Java, Python, and SQL. Finally, if you want to create disruptive healthcare technology, you need to focus on quality. We build it in from the beginning, so get your TDD ready.

Comprehend is growing fast. As a member of our team, you will have substantial impact on the future of our platform, and as we grow so will you. We invest in our people and ensure that they stay challenged while doing meaningful work that they love.

Here's what we like about you:

  • You're a team player - we run stable agile teams and value collaboration: pairing is encouraged, quality is required.
  • You're comfortable thinking at every layer of the architecture, and your well-reasoned and pragmatic solutions show deep understanding.
  • You value clarity in both communication and code.

Stuff we use:

  • React, Scala, Java, JavaScript, Python
  • SQL, PostgreSQL, Spark
  • Zookeeper, Kafka, Storm, Mesos, Marathon, Docker, HDFS

Position Description: Responsible for designing, building, testing, deploying, and operating the Comprehend application architecture. Mentor junior team members and collaborate across the organization.

Minimum Qualifications:

  • Bachelor’s degree, Master’s degree or equivalent in Computer Science, Computer Engineering or related field
  • 5-10 years experience as a Software Engineer, Software Developer or in a related occupation
  • Functional programming techniques using programming languages like Scala, Python
  • Strong knowledge of SQL and working experience with at least one of PostgreSQL or Spark
  • Strong knowledge of distributed computing techniques and its applications including one or more of distributed scheduling (Mesos, Kubernetes), consensus (Zookeeper, etcd), distributed processing (Spark, Storm)

Preferred Qualifications:

  • Designing and implementing services to support web-based/Software as a Service (SaaS) application architectures at scale, such as multi-tenant architectures, data isolation, scalability, and caching approaches
  • Configuring and running web-based/SaaS applications via an automated configuration management technology like Ansible
  • Recognizing solution patterns and applying them to other problems, and abstracting solutions from the problem/domain