Vignesh Prasad

Top 5 Best Things About the Tilt-ernship

Over the past summer, I interned as a front end, web engineer at Tilt and it’s safe to say the three months I spent in San Francisco were the best three months of my life and three months I learned the most from. This list is an effort to do justice to an absolutely awesome internship while hopefully throwing light on what to look for in your summer internships.

Jackson Wang

Join Us for a Meetup on Why Analytics Is Integral to Our Growth Strategy at Tilt

Tilt is very excited to partner with Interana for a Growth Hacking and Analytics meet-up at Tilt HQ on Thursday, March 10 at 5:30pm!

Join us with Interna’s co-founder, Lior Abraham, at Tilt’s headquarters with other product, growth, and data enthusiasts to learn and discuss innovative ways fast growing companies are using behavioral analytics to drive Growth.

Will Wolf

What Really Goes on at a Startup During an Outage

war room 1

As 2016 kicks off, we’re stoked to see our #TiltTour come to life. We partnered with The Chainsmokers to make #TiltTour happen —it’s the first ever fan-sourced tour, letting fans set the tour itinerary. In November, college students on campuses across the nation competed for the chance to bring the EDM duo to their city for a January/February college campus tour. The first 6 campuses to pre-sell at least 800 tickets won a stop on #TiltTour.

Brian Hartsock

Accepting Applications for Summer 2016 Tilt Engineering Interns!

The Tilt Engineering Internship program kicks-off this summer and we are recruiting our very first class of all-star engineering interns.

For those looking for a challenging summer internship, this might be the place for you. We’ve got positions available in our San Francisco, Austin, Blacksburg, and Toronto offices. You’ll get the chance to:

  • Join a small team at a rapidly growing startup, with multiple technologies in use from iOS and Android, to Javascript and HTML/CSS, and a Perl based API.
  • Work alongside our full time engineers build the features we ship to customers daily.
  • Spend a full week in our SF HQ (aka the ‘Tiltquarters’) for our quarterly engineering week! No sprints, just work on what you want to build, attend tech talks and engineering team events for the week.
  • Meet regularly with the Tilt founders James and Khaled.
  • Show off your work each week in our globally broadcasted Friday demos.
  • Be a part of this new and fully formed intern program, designed from the ground up with the goal to give interns real world experience, with help and guidance along the way.

Dave King

Scaling Out Tilt’s Nightwatch Tests With Magellan

TestArmada Logo

I’ve talked in the past about how Tilt rebuilt our Selenium suite using Nightwatch, a JavaScript interface to Selenium WebDriver. Our suite is now up to about 100 end-to-end user scenarios – this provides a good test of our overall functionality that we can use to certify that works before promoting builds from staging to production.

Promoting from staging to production frequently requires a comprehensive test suite that runs quickly, stays green, and is easy to add new tests to. Across all of our services, we’re up to more than 60 deploys a week – as the number of weekly has grown, it’s important to make sure that our test suite is able to keep up. Our past suite setup had issues adding tests, running tests in both desktop and mobile mode, and making sure all the tests stay green. This led to us not having as strong a test suite as we needed, sometimes with customer-facing defects escaping from staging into production.

Because of these pains, we recently converted to using TestArmada’s Magellan Test runner, which automatically splits a test suite up and runs it in parallel. Want to run the entire suite from your developer box against a staging environment? Want to split up the suite to run eight concurrent tests and run each individually? Want to set a global retry policy for all your end-to-end tests? Magellan has made all of this easy and helped us greatly improve our test suite’s overall quality.

Jackson Wang

Join Us at the Inaugural Snowplow Meetup @TiltHQ

We are super excited to be hosting the first Snowplow analytics meet up at Tilt HQ on Tuesday, October 6 at 6:30pm!

Aside from the great free food and booze, this will be a great opportunity for the Snowplow community to: Share how each company is uniquely using event-level data to solve real business problems. Connect prospective Snowplow users with companies who are using Snowplow on a daily basis.

Learn about upcoming features on the Snowplow roadmap, and of course, to meet the Snowplow team!

Also, we will have 3 excellent speakers talking about their experiences with Snowplow:

  • Nora Paymer from StumbleUpon will be talking about “implementing improved and consistent arbitrary event tracking company-wide”
  • Jackson Wang from Tilt will be talking about “Accelerating mobile app adoption: driving users to the mobile apps (splash page a/b testing –> install)”
  • Pete O’Leary from ChefsFeed will be talking about “Mobile Marketing Attribution with Snowplow, Redshift and Looker”

If you haven’t already, RSVP here:

We’ve recently started using Snowplow here at Tilt for our event tracking. Snowplow is an event analytics platform that enables us to record events from anywhere (apps, web, api), process/validate/model the data, and load it into our own Data Warehouse to power sophisticated analysis.

Prior to Snowplow, we were using 3rd party tools to conduct alot of our event analysis, which limited the depth of questions we could actually answer. Now we’re able to answer questions like: “What was someone’s first/last touch?”, “How do users behave cross devices?”, and “How can we use event data to make better products in realtime?”.

Dave King

Rendering React Components Using Perl

React + Perl

The website was originally built using Perl. Over the years, we added jQuery UI to build widgets that had dynamic page behavior. Perl on the backend and jQuery UI on the frontend helped us get to where we are today, but about a year ago it was clear to us that we needed to start introducing a more modern technology stack. We chose React for our view layer and Node.js for the application layer. We recently launched a revamp of our settings page which is built on top of this new technology stack.

We’re always busy working to improve the Tilt website, so stopping everything to port the rest of the site to a new stack would take time that we can’t afford. Instead, we needed to gradually introduce the new technology – ideally side-by-side with our existing codebase. In this post I’ll go through how the Tilt website does server-side rendering of React components from application servers running Perl Dancer. This has allowed us to modernize our tech stack without requiring us to rewrite our entire codebase.

Ali Anari

7 PostgreSQL Data Migration Hacks You Should Be Using (but Aren’t)

Ever find yourself needing to add a new column to your million row users table? Small caveat, this needs to be done without blocking concurrent writes. You also just learned that you need to re-hash all of your users’ passwords using the scrypt key deviation function to harden their credentials against attackers. Oh, and no users are allowed to log in for the duration of this data migration. At the breakneck pace that many of today’s high-tech startups operate, this type of pressure is not entirely uncommon. Fortunately, you have elected to use PostgreSQL or some other industrial-strength RDBMS as your database workhorse of choice, and you will soon have the necessary tools to nail down these newfound requirements with ease.

Dave King

Roll Your Own A/B Tests With Optimizely and React

At Tilt, our growth team uses Optimizely to do light-weight experiments like inject text into the navbar, change styles, or adjust static pages to test out different designs. Optimizely allows you to easily A/B test your website by injecting client-side JavaScript to do things like inject inline styles or change button text. However, our engineers also use Optimizely for richer experiments – showing completely different versions of the homepage, updating the behavior of a JavaScript widget, and rolling out new product features to employees first for testing. In this post I’ll walk through our experiment setup and show how we use React.js together with the Flux architecture to build an application whose behavior can be easily changed through Optimizely.

Gabe Westmaas

Engineering Your Organization

Tilt HQ

As businesses grow, and their products evolve, the teams building those products evolve as well. As a leader it is important to remember that how you design your organization is just as important as how you design your product and your architecture. Your team is how you win in any space, and organizing to help them execute is absolutely vital.

At Tilt, we recently made an organizational change designed to increase ownership, make communication more efficient, and to improve our ability to prioritize product changes that are best for our customers. Organizational changes can often be hard, and seem difficult to implement, but the alternative of leaving inefficiencies in place can be far worse. Below I’ll explain how our teams evolved so far at Tilt, and how the recent changes have impacted our work so far.