Distributed Systems Engineer
You are passionate about the convergence of breakthrough technology with intuitive design. You live, breathe, and dream about data infrastructure. Tough problems excite you. You are a jack of all trades - consistently venturing beyond your skill set taking on new problems. You thrive in the ambiguity of an early startup. You are excited at the prospect of architecting an entire back end system, growing a team, and managing projects.
You will be responsible for designing and helping to build our backend system, including our in-memory & distributed infrastructure.
Our backend is a tall stack, and you will be involved with many aspects of it. Some of your responsibilities will include:
- Architecting distributed systems, micro-services, and data tools to handle very large scale, high throughput workloads.
- Characterizing, analyzing, and optimizing existing systems. Improving performance of algorithms, designing better data structures, and tuning virtual machines / garbage collectors.
- Driving new technology adoption, software engineering methodologies, test driven development, and product quality assurance.
- BS in Computer Science or similar. MS/PhD a plus.
- 5+ years experience in relevant roles.
- Led a team, recruited engineers, and managed projects.
- Experienced with modern data infrastructure technologies like Hadoop, Storm, and Spark.
- Killer systems developer. Speak Java and Scala as a second language.
- Scaled large backend systems with many interconnected parts.
- Extensive experience writing data flows, map reduce jobs, streaming pipelines.
- Designed APIs and implemented hooks to third party tools.
- Built both enterprise and consumer tools.
- Competitive compensation package, including significant equity component
- Work with the smartest people in the industry
- Top health insurance benefits
- Convenient working location with great subway access