"The best programs are written so that computing machines can perform them quickly and so that human beings can understand them clearly. A programmer is ideally an essayist who works with traditional aesthetic and literary forms as well as mathematical concepts, to communicate the way that an algorithm works and to convince a reader that the results will be correct."
-- Donald Knuth, Selected Papers on Computer Science
As a software engineer at Thumbtack, you'll be responsible for bringing the Thumbtack vision to life. That means discovering, researching and implementing anything that moves us towards our vision, in collaboration with designers, product managers and the rest of Thumbtack. This often takes the form of new product features, but also includes improvements to Thumbtack backend matching system, internal tools to give us insight into Thumbtack ecosystem, engineering infrastructure to keep the team humming along, and anything else that feels like an exciting opportunity. In any case, as a software engineer, it always means managing complexity through thoughtful software design to ensure we can grow and scale our product without sacrificing development speed or quality.
We expect you to be excited by Thumbtack's mission to transform the local services economy, making it more efficient and useful for both sides of the marketplace. We deeply believe in the transformative power of technology in the services industry.
Our engineering process values ownership and individual contribution within a collaborative environment. To this end, you will have complete autonomy in choosing the kinds of projects you undertake. We expect you to take a deliberate and thoughtful approach to your decision-making while also exercising great freedom and creativity. We hope that you'll enjoy crafting sentences and paragraphs as much as you enjoy crafting methods and classes.