Who We Are:
Materialize is the streaming SQL database company that makes it easy for any developer or analyst to understand streaming data, answer complex questions and build intelligent applications using standard technology. Whether it’s delivering personalized experiences, accurately identifying fraud, building predictive AI, or discovering new business opportunities, the ability to run complex queries on multiple streams of data and keep their answers up to date is critical to making better decisions about the changing world around us.
We are focused on bottom-up developer adoption, our core software is free to use and source available, our business model is a cloud product that handles management of Materialize and lets businesses focus on building value. We have a vibrant developer community on Slack and as much as possible we work in public on GitHub.
The Materialize team includes engineers who were early employees of Cockroach Labs, Ververica, and Stripe. Our work builds on top of Timely Dataflow and Differential Dataflow, both created by our co-founder Frank McSherry, a world-leading computer scientist with decades of award-winning research in all aspects of data.
Kleiner Perkins, Redpoint Ventures and Lightspeed Venture Partners.
About The Role:
At Materialize, engineering management means serving your team of engineers to create an environment that allows them to effectively work and evolve. Because the team has a mix of backgrounds and geographic locations, this role requires a balance of execution, adaptability, and empathy and the ability to lead across time zones.
You will work as part of the management team and report to the Director of Engineering for Database Engineering. As the engineering manager for the storage team, you will directly contribute to the product and technology strategy of Materialize. You will be responsible for delivery of the storage team’s roadmap and the overall quality and health of the storage layer.
Many of our engineers are in New York City, but we have engineers in every North American time zone as well as spread across Europe. As an early engineering manager at Materialize, you will lead part of our skilled engineering team. You'll help create the structure that will enable sustainable engineering growth. We are gearing up for growth, and you could be part of what makes that growth possible.
The Storage Team:
The storage team is distributed over Europe (Central European Time) and Northern America (Eastern Time and Pacific Time).
The team is responsible for Materialize’s storage layer which records collections of data and provides them to other layers of the Materialize stack. Team responsibilities include sources (e.g. ingesting data from upstream systems such as Postgres replication stream) and sinks (e.g. writing data out to downstream systems such as Apache Kafka), as well as persisting data within Materialize (e.g. for materialized views or user tables). The storage layer is critical for the overall performance and correctness of the Materialize. Given the low-level nature of this layer, we expect the engineering manager for storage to be fairly technical.
Minimum Viable Process
- People often join startups to get away from the heavyweight processes common at larger companies. We have recommendations for processes, but we only introduce them when there is a demonstrated need. We don’t require uniform processes across the company; team processes can be tailored towards the individual team situation.
- We highly value transparency across the organization. We default to working in the open (both on our codebase and within the company) and feel comfortable sharing incomplete thinking or works in progress with peers and our teams.
Candid, Continuous Feedback
- We provide candid (and kind) feedback as quickly as we can. We don’t wait for 1-1s or big emergencies to happen.
- Engineering leadership at Materialize is about being of service to your team. While managers have a lot of input into what the engineers do on a daily basis, this must be tempered with the engineers’ preferences, career goals, work/life balance, and growth goals.
Sound Technical Judgment
- We expect engineering managers to exercise good engineering judgment while leaving core technical decisions to the experts on the team. Teams have tech leads or more senior engineers who have deep technical knowledge and are, therefore, most qualified to make most technical decisions. Engineering managers’ technical judgment contributes to evaluating engineering trade offs, helping engineers grow, influencing roadmaps, and contributing to design discussions.
- Serve your team through coaching, mentoring, and management.
- Partner with product to ensure successful customer outcomes.
- Start as a software engineer on the team for 1-3 months, to develop close working relationships with our software engineers.
- Work with cross-functional stakeholders to ensure sustainable, effective delivery.
- Work with tech leads to develop technical roadmaps and to manage code quality.
- Be accountable for team plans and deliverables.
- Partner with recruiting to create a hiring plan and participate in the hiring process by sourcing, screening, interviewing, and closing engineering candidates.
- Foster a culture of execution, quality, and inclusivity.
- Grow the technical expertise and careers of your team members.
- Develop the essential processes and structure needed to consistently deliver.
- 2+ years of experience managing engineering teams of distributed systems and infrastructure engineers.
- Recent experience at a startup.
- Experience managing a distributed team.
- Substantial hands on engineering experience with one or more of the following: distributed systems, databases, and data infrastructure.
- Strong written and verbal communication skills.
- Ability to adapt to different development methodologies.
- Ability to create a sufficient amount of process to help the team make progress.
- Experience working cross functionally with product management, sales, and marketing.
- B.S. or B.A. in Computer Science, or equivalent experience.
- Significant experience using SQL databases, Apache Kafka, or other relevant data infrastructure.
- Background in creating data infrastructure, such as databases or data processing frameworks.
- Experience building high performance, high availability systems.
- Experience working on a cloud product.
- M.S. or Ph.D in Computer Science.
- Experience managing a distributed team.
We understand it takes a diverse team of highly intelligent, passionate, curious, and creative people to develop the exceptional product we are building. Our dynamic team has incredible perspectives to share, just as we know you do, and we take great pride in being an equal opportunity employer.