Life at Twitter + Career Advice for Students
-
Upload
chris-aniszczyk -
Category
Technology
-
view
842 -
download
2
Transcript of Life at Twitter + Career Advice for Students
![Page 1: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/1.jpg)
#TwitterDevLife at Twitter and some career advice
Chris Aniszczyk (@cra)
![Page 2: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/2.jpg)
Development at Twitter
intro tools practices open source
![Page 3: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/3.jpg)
Howdy, I’m @cra!
![Page 4: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/4.jpg)
https://twitter.com/TwitterEng
• ~1800 Engineers
• 50% of the company is engineers
• From Datacenter to Kernel to JVM to Mobile to Frontend (etc)
• Engineering Offices
• SF, Seattle, Boulder, NYC, London, Tokyo
Twitter Engineering
![Page 5: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/5.jpg)
LOL 1800 Engineers for Tweets? (Inspired by @shit_hn_says: I can just build Twitter clone over the weekend)
![Page 6: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/6.jpg)
Twitter is global, open and real-time
![Page 7: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/7.jpg)
Twitter, Inc. | Confidential
![Page 8: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/8.jpg)
Why is Twitter actually hard?
![Page 9: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/9.jpg)
HackPrinceton - November 14-16, 2014@TwitterAds | Confidential
300M+
500M+
80%
Active users
Tweets / Day
of users aremobile users
2006 2015
![Page 10: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/10.jpg)
500,000,000 Tweets/Day 3,500,000,000 Tweets/Week
![Page 11: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/11.jpg)
~6000 Tweets/Second (steady state)
![Page 12: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/12.jpg)
Miyazaki 2011 25,088 TPS (NYE 2013: 33,338 TPS)
バルス! (“Death to Twitter”)
![Page 13: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/13.jpg)
Miyazaki 2013 25,088 TPS 143,199 TPS https://blog.twitter.com/2013/new-tweets-per-second-record-and-how
バルス! (“Death to Twitter”)
![Page 14: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/14.jpg)
Twitter is simple on the surface Complexity lies beneath…
![Page 15: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/15.jpg)
Profiles / Gizmoduck
Who to Follow / S&R
Trends / S&R
Home timeline / TLS
PTw / Ads
Expanded media / Cards
Contact import / Growth
Compose / Tweetypie
Translation / i18n
DMs / SocialDiscover / S&R
![Page 16: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/16.jpg)
Development at Twitter
intro tools practices open source
![Page 17: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/17.jpg)
VERSION CONTROLGit (GitHub for Open Source) Monorepo for back-end services
![Page 18: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/18.jpg)
ISSUES / TICKETINGAtlassian JIRA
![Page 19: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/19.jpg)
CHATHipchat
![Page 20: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/20.jpg)
CHAT BOTSHubot
![Page 21: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/21.jpg)
DOCUMENTATIONConfluence / Docbird
![Page 22: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/22.jpg)
CODE REVIEWSGerrit ReviewBoard
![Page 23: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/23.jpg)
VIDEO CONFERENCINGBluejeans / Google Hangouts
![Page 24: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/24.jpg)
Language Frameworks
• scalaTest, junit (JVM)
• jasmine, qunit (JavaScript)
• webdriver, unity (Integration)
• UIAutomation / Robotium (mobile)
• rspec, test/unit (Ruby)
TESTING TOOLS
![Page 25: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/25.jpg)
Development at Twitter
intro tools practices open source
![Page 26: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/26.jpg)
TWITTER UNIVERSITYA culture of learning!
![Page 27: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/27.jpg)
CONTINUOUS INTEGRATIONJenkins and Mesos Clusters
![Page 29: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/29.jpg)
PREFLIGHT TESTINGEvery employee tests first (slow rollout to users 1% etc)
![Page 30: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/30.jpg)
#HACKWEEK (Fix-It Weeks)Every quarter
![Page 31: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/31.jpg)
DEMO HOUR (#Treephy)Every 2 weeks, demo progress
![Page 32: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/32.jpg)
OBSERVE ALL THE THINGShttp://github.com/twitter/zipkin
![Page 33: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/33.jpg)
• timed launching, feature flags, access, kill switch
DECIDER (FEATURING FLAGS)
if (request.isDeciderAvailable(“my_feature_name”)) { // do this } else { // do that }
go/decider
![Page 34: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/34.jpg)
• experiments, A/B tests
DDG (EXPERIMENTATION)
import com.twitter.web.util.abdecider.experiments.MyExperiment
MyExperiment.getExperimentBucketName(request) match { case Some(“control”) => ... case Some(“expand_images”) => ... case Some(“expand_videos”) => ... }
go/ddg
![Page 35: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/35.jpg)
RUNBOOKSGuides on running services
![Page 36: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/36.jpg)
SELF SERVICE SERVICESApache Mesos / Aurora
![Page 37: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/37.jpg)
Development at Twitter
intro tools practices open source
![Page 38: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/38.jpg)
Twitter Runs on Open Source
![Page 43: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/43.jpg)
CAREER ADVICE: 7 TIPS
![Page 44: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/44.jpg)
Find newbie-friendly* open source projects… Contribute to them!
*https://www.google-melange.com/gsoc/homepage/google/gsoc2015
![Page 45: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/45.jpg)
Find a mentor early at work and outside of it (You will learn, save time and opportunities will find you)
https://fedoraproject.org/wiki/Mentors
![Page 46: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/46.jpg)
Don’t specialize early in your career Technology changes like crazy, stay curious and learn new things
(Twitter was a RoR shop and moved to the JVM)
![Page 47: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/47.jpg)
Not networking? you’re NOT WORKING! Go to meetups: http://capitalfactory.com/learn/events/
Speak at events/conferences: https://lanyrd.com (I know this may be hard for some CS students)
![Page 48: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/48.jpg)
Control your public image*, you are a brand (Brand yourself for the career you want, not the job you have now)
Get on Github: https://github.com Get on LinkedIn: https://linkedin.com
Get on Twitter: https://twitter.com Get on IRC (or Slack): irc://irc.freenode.net
Get on Stackoverflow: https://stackoverflow.com
*http://www.businessinsider.com/twitter-fired-2011-5
![Page 49: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/49.jpg)
Interview every year, practice makes perfect This will also help sharpen skills and establish your worth
(Read Cracking the Coding Interview: http://www.careercup.com/book)
![Page 50: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/50.jpg)
Learn negotiation skills, get multiple offers Don’t sell yourself short, times are good these days
See Glassdoor for salaries: https://glassdoor.com
![Page 51: Life at Twitter + Career Advice for Students](https://reader034.fdocuments.us/reader034/viewer/2022052606/58aa8a791a28ab2e448b61ff/html5/thumbnails/51.jpg)
Q&A #ThankYou
[email protected] (@cra) We’re always hiring (jobs.twitter.com)
t.co/UTAustin and t.co/AustinIntern