About the Team
The Dev Tooling team is an internal-facing team dedicated to enabling the entire engineering organization to do better work. This wide and intentionally-vague charter encompasses everything from developing new engineer onboarding processes to building all of the tooling that engineers use and depend on in their daily lives to be effective. If there’s a common thread between multiple projects, whether discovered in the present or envisaged for the future, we try to get out ahead and build the systems and tooling needed for that work.
We are planning to build out a first-week onboarding bootcamp for new engineers that takes them through the gauntlet of setting up their dev machines, and then building simple front-end, back-end, and GraphQL modules to get a taste of every layer of our stack. This new role will, amongst the other standard dev tooling duties, take on the challenge of designing and running this training bootcamp every week that new engineers onboard and unblocking the new hires on making these myriad systems play well together. This will give you front lines experience with how people experience our tooling for the first time and the opportunity to quickly ramp up the tooling, documentation, and training associated with the onboarding process to help new hires become successful even faster.
We have developed an in-house Kubernetes development environment (read about it at our medium article: https://outreach-eng.medium.com/localizer-an-adventure-in-creating-a-reverse-tunnel-tunnel-manager-for-kubernetes-47c614606b68) that the entire engineering organization bases their daily work on. We have also built a templating-based project and set of libraries to rapidly and securely build Golang-based services, libraries, tools, and CLIs that easily deploy and test across our local development through production environments. Our team is evolving these pieces toward a fully open-sourced client+server development and deployment environment “startup in a box”, with the goal of building a vibrant community around it.
The dev tooling team is, by design, a team of generalists, with specializations. With the wide charter, you may find yourself spending a morning building a logging library and the afternoon working with a client team to design and build an efficient way to test their code against production-like services. We spend our time balancing between live support to enable/unblock our engineering coworkers and feature development. The team provides myriad opportunities to expand your knowledge and skills, both of the raw technical type as well as feature/product design. If a charter this vague sounds exciting to you, you might just be a dev tooler. Come find out!
Your Daily Adventures Will Include
- Building a onboarding boot camp for all new engineers to run through their first week and running through that boot camp every week there’s new engineering hires
- Coordinating architecture presentations for the onboarding week in between the boot camp working sessions
- Honing the syllabus for regular vendored engineering training (Go, React, Kubernetes, etc.) and coordinating with teams as their needs evolve
- Debugging Kubernetes service interactions and develop common manifests across projects
- Designing automatically-deploying end-to-end multi-service integration test frameworks
- Identifying common threads amongst upcoming projects and building common libraries/frameworks/processes to bring them together
- Working with internal teams to help prioritize new work based on current needs
- Triaging feedback and bugs from users (currently internal but soon external as well)
- Engaging with the open source community
- Building the core aspects of services so feature teams can focus on business logic
- You love enabling your coworkers to be successful
- The idea of running a weekly boot camp for new hires is exciting to you
- You thrive in an ambiguous environment that requires seeking out and collaborating with both your team and the rest of the company to design effective solutions
- Experience designing and supporting internal-facing tooling where the “customers” are your coworkers
- Understanding of which details are important and ability to prioritize incremental delivery
- Experience with container-based workflows and services (Kubernetes preferred but not required)
- Experience designing, building, and supporting infrastructure services
- Familiar with continuous deployment environments
- Willingness to learn new technologies (experience with other languages is okay too, but most of our time is spent in Golang and Typescript, with plenty of legacy stuff on Ruby on Rails, so you should be able to get up-to-speed on at least one of them - quickly).
- You embody our core values. We are hungry craftspeople, we have grit, we are honest, we take ownership, we have each other’s back no matter what, we’re one with our customers, and we find strength in diversity and inclusion
Why You’ll Love It Here
• Generous medical, dental, and vision coverage for full-time employees and their dependents
• Flexible time off
• 401k to help you save for the future
• Company-organized and personal paid volunteer days to support the community that supports us
• Fun company and team outings (or virtual events these days!) because we play just as hard as we work
• Diversity and inclusion programs that promote employee resource groups like OWN (Outreach Womxn's Network)
• A parental leave program that includes not just extended time off but options for a paid night nurse, food delivery, gradual return to work, and the Gottman Institute's Bringing Home Baby course for new parents
• Employee referral bonuses to encourage the addition of great new people to the team
• Plus, unlimited snacks and beverages in our kitchen (once we're back in the office, that is!)
• We’re an equal opportunity employer. All applicants will be considered for employment without attention to race, color, religion, sex, sexual orientation, gender identity, national origin, veteran or disability status