Three string functions every PHP project needs
At Thumbtack, we do most of our work in PHP and Python. Our website is written in PHP, and much behind-the-scenes is written in Python. Because we are constantly working in both languages, we often...
View ArticleGooglebot makes POST requests via AJAX
Googlebot is constantly evolving to better capture the web’s content. Over the past few years we’ve seen Googlebot submit GET forms and execute JavaScript. But we’ve always taken it for granted that...
View ArticleSEO Tip: Titles matter, probably more than you think
As a preface, I want to mention that this post is not any sort of secret formula for SEO. The only way to succeed at SEO is to deliver relevant content to a user, and if you don’t do that you are not...
View ArticleHow we got people to earn our schwag
This year, Thumbtack was one of the sponsors of the PyCon conference. Our sponsorship got us a booth in the conference’s expo hall, and hence the opportunity to tell people what we’re all about....
View ArticleGambling with the devil: A/B tests done right
“Designing an experiment is like gambling with the devil: Only a random strategy can defeat all his betting systems.” (R. A. Fisher) These days just about everyone does some form of A/B testing to...
View ArticleA primer on Python decorators
Python allows you, the programmer, to do some very cool things with functions. In Python, functions are first-class objects, which means that you can do anything with them that you can do with strings,...
View ArticleKnow your latency: a simple hack using Graphite and Memcache
“You know,” said Arthur, “it’s at times like this, when I’m trapped in a Vogon airlock with a man from Betelgeuse, and about to die of asphyxiation in deep space that I really wish I’d listened to what...
View ArticleWelcome our newest engineer, Jeremy
Jeremy just graduated from Appalachian State this spring, and moved across the US from Boone, NC to San Francisco to work at Thumbtack. He is an avid photographer (check out his blog for some of his...
View ArticleWelcome our newest engineer, Ben
Ben is our second Carl in 7 total engineers, having graduated from Carleton College this spring. He majored in math and was especially interested in combinatorics. Thumbtack is officially a hot...
View ArticleWelcome our newest engineer, Tommy
We’re excited that Tommy Saylor is joining the engineering team. When he’s not getting introspective in park-bench photographs, you can find him pondering webby buzzwords like HTML5 and CSS3 over on...
View ArticlePyCon 2013 Coding Challenge Roundup
This year’s PyCon was again, extraordinary. Our heartfelt thanks go out to the entire community for such an amazing event. We especially enjoyed getting to know other engineers from all over the...
View ArticleSoMa Tech Talks – AngularJS
The following talks on AngularJS were from the September 26, 2013 SoMA Tech Talk event hosted at Thumbtack. Zach Snow – Data binding in AngularJS Chris Mueller – Chris Mueller – Migration Patterns from...
View ArticleBuilding Thumbtack’s Data Infrastructure: Part ll
Part ll: How we run Spark/Sqoop in production Introduction In the last post, we described our legacy infrastructure and event processing code, along with the key design decisions we made as we...
View ArticleStarting a Women in Engineering Program at Thumbtack
At Thumbtack, one of our core values is to Make Each Other Better. We do this by giving and receiving feedback, mentoring new engineers, and finding ways to mindfully educate and empower one another....
View ArticleA Data-Driven Approach to Improving our Customer-Professional Matching
By: Ben Anderson & Xin Liu When a customer posts a request on Thumbtack, we want to match them with the right professional for the job. When the marketplace was small, this was easy—just blast the...
View ArticleAdopting Swift: Migrating to Frameworks on iOS
Thumbtack, like any marketplace, has two sides: consumers looking for services and pros offering services. As a result, we have two iOS apps: one for consumers and one for pros. To manage dependencies...
View ArticleBuilding Our Own Push Notification Delivery Service
When we first developed our mobile apps in 2014, we decided to use a third-party service to deliver push notifications. It was fast, easy and at the time we did not have enough engineers to implement...
View ArticleWelcome to Thumbtack, Noam Lovinsky!
By: Marco Zappacosta Working with so many curious, ambitious, and kind humans is one of the best things (if not the best thing) about being at Thumbtack. This month, I’ve had the privilege of welcoming...
View ArticleMigrating our Scala codebase to Spark 2
Introduction The data infrastructure team at Thumbtack has just completed the process of migrating all of our production Spark jobs from Spark 1.6.1 to Spark 2.0.0. We deployed Spark 2 and all of our...
View ArticleHow Thumbtack Engineering Built Its Model Serving System in Scala
When we built our first machine learned model in Spark to predict pros’ interests in customer requests, we loaded pros’ historical engagement features directly into an online Golang application, which...
View Article