The engineering team at Root strives to be one of the most transformative engineering teams ever. We’re changing the way an industry works by leveraging technology and data to build the best products possible. Even with our significant growth, we operate in small teams that are given ownership over projects and results. We’ve found that the people closest to the problems are the best at solving them. We're actively hiring Engineers for our Columbus, OH or Chicago, IL offices, as well as those who prefer to work remotely! Remote employees must be located in the United States are expected to work either Eastern or Central timezone hours.
Our tech stack includes:
Ruby / Rails backend, RSpec for testing
Small amounts of native iOS and Android
Deployment to AWS ECS using containers
Buildkite for CI
We’re scaling rapidly, and we recently launched a $6B IPO:
Our team excels at delivering software to solve the problems in front of us at Root: presently, a suite of world-class mobile, web, and server-based products obsessed with the customer experience. We’ve shaped our team and process around this; we know that constant iteration and experimentation produce the best results.
For more information on engineering at Root see root.engineering
We divide the areas of responsibility for engineers into three major areas:
Technical: The skills and knowledge that make up an engineer’s basic problem-solving toolbox.
Planning and Execution: The ability to plan and execute assigned work beyond basic technical solutions.
Working with Others: The ability to work effectively with other engineers and people in other functions.
Scope of Impact: Individual/Team
What we look for in a Software Engineer II:
- Writes clean, functional, well-tested code
- Experienced with several programming paradigms
- Deep understanding of client-server architecture and web technologies
- Deep understanding of version control tools
- Solid knowledge of databases and SQL
- Basic understanding of infrastructure and devops
Planning and Execution
- Completes large pre-planned tasks in an efficient manner
- Able to take on medium unplanned feature work and bugfixes
- Thinks critically about assigned work to guarantee business functionality. Understands and takes business goals into account when making technical decisions.
Working with Others
- Works with tech lead and teammates to answer questions about their work
- Understands and implements feedback from peers into own work
- Provides effective and accurate technical feedback in code reviews
- Mentors and coaches more junior engineers
- Able to work across teams to tackle complex issues