Tech Stack Roundup #3: April 2017
April was a busy month! There were so many great tech stack posts that we had trouble picking just ten. We’ve got a total of 20 top posts for month of April, including a whopping ten hidden gems💎. Posts from Netflix, Flipboard, Slack, Twitter, Yelp, Dropbox, LinkedIn, Shopify, and more.
Surprisingly, one major theme for April was mobile development. LinkedIn, Yelp, and Uber all wrote about their use of Android, while Uber broke down the rewrite of their app in Swift, and Shopify wrote about building their mobile CI system.
Top 10 Tech Stack Posts:
How we built Twitter Lite (Twitter)
If you haven’t heard, Twitter Lite is a “fast and responsive, uses less data, takes up less storage space, and supports push notifications and offline use in modern browsers” that’s aim is to be the best way to use Twitter when your connectivity is slow, unreliable, limited, or expensive. Basically, a stripped down version of Twitter. Twitter built this as a client-side JS app built with React, Redux, Normalizr, Globalize, Babel, Webpack, Jest, WebdriverIO, and Yarn.
Authors: Nicolas Gallagher
TypeScript at Slack (Slack)
Authors: Felix Rieseberg
Detecting Trustworthy Domains (Flipboard)
Flipboard no longer manually filters out and prioritizes domains. They’ve developed a machine learning system called Domain Ranker to automatically distinguish authoritative domains from plagiarists, spammers and other low quality sources to make sure you only get the highest of quality links in your newsfeed.
Authors: Mike Vlad Cora
Yelp now runs more than 20 million tests per day using their own homegrown system called Seagull. Seagull is a fault tolerant and resilient distributed system which we use to parallelize our test suite execution. Seagull is built using the following:
- Apache Mesos (manages the resources of our Seagull cluster)
- AWS EC2 (provides the instances that make up the Seagull and Jenkins cluster)
- AWS DynamoDB (stores scheduler metadata)
- Docker (provides isolation for services required by the tests)
- Elasticsearch (tracks test run times and cluster usage data)
- Jenkins (builds code artifacts and runs the Seagull schedulers)
- Kibana and SignalFx (provide monitoring and alerting)
- AWS S3 (serves as the source-of-truth for test logs)
Authors: Chunky Gupta
The world’s most popular tv and movie streaming service, Netflix has just crossed 1 million containers launched per week 😱. They built a tool called Titus to help them manage these Docker containers and their deployment on Amazon EC2. Titus helps them schedule container execution and autoscale capacity on EC2. Don’t miss this deep dive into the evolution of their container stack.
Authors: Andrew Spyker, Andrew Leung, Tim Bozarth
Most of Walmart.com is now being powered by server-side rendered React. In this post, they show the world why. Walmart has previously open sourced Electrode, which improves the performance of SSR. If you’re considering the tradeoffs between vanilla React and SSR, don’t miss this analysis, complete with Chrome network tab benchmarks.
Authors: Alex Grigoryan
GraphQL Initiative at Remind (Remind)
GraphQL is starting to pick up steam. Not only have GitHub and Yelp released GraphQL APIs, but companies like Remind have started to use it in production for their main apps. When Remind’s Rails monolith got too big, they decided to turn to GraphQL to improve performance. If you’re considering adding GraphQL to your stack, listen up.
Authors: Ian Hu
Back at Swift Summit in San Francisco in 2016, Tuomas Artman explained how Uber handles their massive Swift codebase. They touch on why they chose to rewrite their iOS app in Swift. They also outline the lessons learned from having a hundred engineers working on a Swift codebase (hint: you may need something like Buck).
Authors: Tuomas Artman
Running Online Services at Riot Part III Part Deux (Riot Games)
Riot Games is back in the Tech Stack Roundup. This time, for how they’re approaching infrastructure as a code and the security implications, load balancing, and failover testing. Find out how they’ve built out their highly available system with details on their data center networking.
Authors: Doug Lardo, David Press
Last year, Dropbox released its mobile document scanner. You can use your mobile phone to take photos and “scan” items like receipts and invoices, and business users can then extract all the text in scanned documents and index it, so that it can be searched for later, and create a hidden overlay so text can be copied and pasted from the scans saved as PDFs. In this post Dropbox explains how they built the process extracts actual text from our doc-scanned image.
Authors: Brad Neuberg
And now..for the Hidden Gems.
- Creating Accessible Android Products at LinkedIn (LinkedIn)
- Continuous Integration on Android (Yelp)
- Engineering Stability in Migrations Moving to Immutable Collections in Uber’s Android Apps (Uber)
- Building a Dynamic Mobile CI System (Shopify)
- Continuous deployment using Jenkins (Thumbtack)
- Memoization in Ruby (made easy) (Gusto)
- How we made our DNS stack 3x faster (CloudFlare)
- Elasticsearch Cluster Lifecycle at eBay (eBay)
- How Swat.io migrated from MySQL to PostgreSQL in 2 years (Die Socialisten Garage)
Get this post plus the latest updates on tools you love by subscribing to StackShare Weekly, featuring the best hand-curated new dev tools and infrastructure services.
Leave any questions you may have for the OPs above in the comments and we’ll make sure they see it :)