# Awesome CTO > — Hi, my name is Dima and I'm CTO > > — (chorus) Hello, Dima A curated **and opinionated** list of resources for Chief Technology Officers, with the emphasis on startups ## Contents * [General](#general) * [Hiring](#hiring) * [Management](#management) * [Development process](#development-process) * [Architecture](#architecture) * [Technologies](#technologies) * [Startups](#startups) * [Related stuff](#related-stuff) * [Product](#product) * [Marketing](#marketing) * [More links](#more-links) ## General * [The Different CTO Roles](http://www.allthingsdistributed.com/2007/07/the_different_cto_roles.html) - Werner Vogels *(Amazon CTO)* * [Is it required to be a developer to become a CTO?](https://www.quora.com/Is-it-required-to-be-a-developer-coder-to-become-a-CTO-Why-cant-an-architect-become-a-CTO) *(Quora)* * [Three Golden Rules to Finding a CTO](http://www.rudebaguette.com/2011/12/01/three-golden-rules-to-finding-a-cto/) * [Becoming a CTO](https://juokaz.com/blog/becoming-a-cto) * [VP Engineering vs CTO](http://avc.com/2011/10/vp-engineering-vs-cto/) - Fred Wilson *(Union Square Ventures)* * [What makes for a successful CEO and CTO relationship in a startup?](https://www.quora.com/What-makes-for-a-successful-CEO-and-CTO-relationship-in-a-startup) *(Quora)* * [#define CTO](https://blog.gregbrockman.com/figuring-out-the-cto-role-at-stripe) - Greg Brockman *(Stripe CTO)* * [How my role as CTO has changed as we've grown to 100 engineers](https://engineering.gusto.com/how-my-role-as-cto-has-changed-as-weve-grown-to-100-engineers/) ## Hiring * [The Guerrilla Guide to Interviewing](https://www.joelonsoftware.com/2006/10/25/the-guerrilla-guide-to-interviewing-version-30/) - Joel Spolsky *(StackOverflow co-founder)* * [The Joel Test: 12 Steps to Better Code](https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/) - Joel Spolsky * [Why Can't Programmers.. Program?](https://blog.codinghorror.com/why-cant-programmers-program/) - Jeff Atwood *(StackOverflow co-founder)* * [We Hire the Best, Just Like Everyone Else](https://blog.codinghorror.com/we-hire-the-best-just-like-everyone-else/) - Jeff Atwood * [Getting the Interview Phone Screen Right](https://blog.codinghorror.com/getting-the-interview-phone-screen-right/) - Jeff Atwood * [Engineering interview process at Stripe](https://www.quora.com/What-is-the-engineering-interview-process-like-at-Stripe) *(Quora)* * [Improving Our Engineering Interview Process](https://engineering.foursquare.com/improving-our-engineering-interview-process-106173ba25a9) *(Foursquare)* * [Hitting the High Notes](https://www.joelonsoftware.com/2005/07/25/hitting-the-high-notes/) - Joel Spolsky * [Top 10 System Design Interview Questions](https://hackernoon.com/top-10-system-design-interview-questions-for-software-engineers-8561290f0444) - *(HackerNoon)* * [How To Hire World-Class Engineers](https://angel.co/blog/how-to-hire-world-class-engineers) *(angel.co)* * [Trouble hiring senior engineers? It's probably you](https://hiringengineersbook.com/post/trouble-hiring/) * [Reverse interview](https://github.com/viraptor/reverse-interview) * [The Real 11 Reasons I Don't Hire You](https://charity.wtf/2019/10/18/the-real-11-reasons-i-dont-hire-you/) - Charity Majors ## Management * [The mythical 10x programmer](http://antirez.com/news/112) - Salvatore Sanfilippo *(author of Redis)* * [The Engineer/Manager Pendulum](https://charity.wtf/2017/05/11/the-engineer-manager-pendulum/) - Charity Majors * [Maker's Schedule, Manager's Schedule](http://www.paulgraham.com/makersschedule.html) - Paul Graham *(Y Combinator)* * [Software Engineering at Google](https://arxiv.org/pdf/1702.01715.pdf) * [The Atlassian Team Playbook](https://www.atlassian.com/team-playbook) * [Valve Employee Handbook](http://www.valvesoftware.com/company/Valve_Handbook_LowRes.pdf) * [Basecamp Employee Handbook](https://github.com/basecamp/handbook) * [GitLab Team Handbook](https://about.gitlab.com/handbook/) * [Google re:Work](https://rework.withgoogle.com) * [44 Engineering Management Lessons](http://www.defmacro.org/2014/10/03/engman.html) * [The Secret To Discussing Pay With Employees](https://www.officevibe.com/blog/secret-to-discussing-pay-with-employees) * [Awesome Leading and Managing](https://github.com/LappleApple/awesome-leading-and-managing) *(Github)* * [Progressing from tech to leadership](https://lcamtuf.blogspot.com/2018/02/on-leadership.html) * [A Review Process](https://capwatkins.com/blog/a-review-process) - Cap Watkins * [12 manager readmes from top tech companies](https://hackernoon.com/12-manager-readmes-from-silicon-valleys-top-tech-companies-26588a660afe) * [Predictable Delivery](https://docs.google.com/presentation/d/1weEU1G-4JAhD6tRlYinYS1ZOHI_SAUQkvTBFBzi67G0/edit) * [How people rise up to EVP level in big organizations](https://www.quora.com/How-do-some-people-get-stuck-at-a-senior-engineer-position-while-a-few-starts-or-rise-up-to-EVP-level-in-big-organizations-like-Microsoft-Amazon-Apple-Google-What-exactly-should-I-keep-doing-to-go-up-the-ladder) *(Quora)* * [Should I Become a Manager?](http://capwatkins.com/blog/should-i-become-a-manager) - Cap Watkins * [How to fail as a new engineering manager](https://blog.usejournal.com/how-to-fail-as-a-new-engineering-manager-30b5fb617a) * [Design Patterns for Managing Up](https://queue.acm.org/detail.cfm?id=3308563) * [Engineering Management](https://github.com/charlax/engineering-management) *(Github)* * [On-boarding Software Engineers](https://medium.com/@odedmagger/on-boarding-software-engineers-10-techniques-to-get-it-right-927cb73e3dab) * [Hold Your Team Accountable](https://marker.medium.com/how-to-hold-your-team-accountable-9fa57bfb315d) * [The Manager FAQ](http://www.seebs.net/faqs/manager.html) ## Development process * Scrum / Agile * [Introduction to Scrum for Managers and Executives](http://www.goodagile.com/resources/goodagile_managers_presentation.pdf) * [Writing User Stories, Examples and Templates In Agile Methodologies](http://www.yodiz.com/blog/writing-user-stories-examples-and-templates-in-agile-methodologies/) * CI / CD * [What are the fundamental principles of continuous integration?](https://www.quora.com/What-are-the-fundamental-principles-of-continuous-integration) * [The Product Managers’ Guide to Continuous Delivery and DevOps](http://www.mindtheproduct.com/2016/02/what-the-hell-are-ci-cd-and-devops-a-cheatsheet-for-the-rest-of-us/) * Git * [Comparing Git workflows](https://www.atlassian.com/git/tutorials/comparing-workflows) * [A successful Git branching model](http://nvie.com/posts/a-successful-git-branching-model/) * Planning * [Evidence Based Scheduling](https://www.joelonsoftware.com/2007/10/26/evidence-based-scheduling/) - Joel Spolsky *(StackOverflow co-founder)* * [Book] [The Mythical Man-Month](https://en.wikipedia.org/wiki/The_Mythical_Man-Month) * Crisis * [How to Write a Postmortem](https://blog.serverdensity.com/how-to-write-a-postmortem/) * [List of Post-mortems](https://github.com/danluu/post-mortems) *(GitHub)* * [Startup Lessons Learned - Five Whys](http://www.startuplessonslearned.com/2008/11/five-whys.html) - Eric Ries *(creator of the Lean Startup)* * [On Call Rotations: How Best to Wake Devs Up in the Middle of the Night](https://thenewstack.io/call-rotations-best-wake-devs-middle-night/) * [Testing in Production, the safe way](https://medium.com/@copyconstruct/testing-in-production-the-safe-way-18ca102d0ef1) ## Architecture * [Twelve-Factor App](https://12factor.net) * [Reactive Manifesto](http://www.reactivemanifesto.org) * [An introduction to distributed systems](https://github.com/aphyr/distsys-class) - Kyle Kingsbury *(aphyr, author of Jepsen)* * [Microservices – Please, don’t](http://basho.com/posts/technical/microservices-please-dont/) (also: [HackerNews discussion](https://news.ycombinator.com/item?id=12508655)) * [The Death of Microservice Madness in 2018](http://www.dwmkerr.com/the-death-of-microservice-madness-in-2018/) * [Shrinking microservices to functions](http://highscalability.com/blog/2017/3/27/faster-networks-cheaper-messages-microservices-functions-edg.html) * [Design patterns for microservices](https://azure.microsoft.com/en-us/blog/design-patterns-for-microservices/) * [Serverless architecture](https://www.quora.com/What-is-Serverless-Computing) *(Quora)* * [NoSQL Databases: a Survey and Decision Guidance](https://medium.baqend.com/nosql-databases-a-survey-and-decision-guidance-ea7823a822d) * [Best Practices for Designing a Pragmatic RESTful API](http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api) * [10 Modern Software Over-Engineering Mistakes](https://medium.com/@rdsubhas/10-modern-software-engineering-mistakes-bc67fbef4fc8) * [How I Write Tests](https://blog.nelhage.com/2016/12/how-i-test/) * [Lambda Architecture](https://en.wikipedia.org/wiki/Lambda_architecture) * [Evolutionary Database Design](https://martinfowler.com/articles/evodb.html) *(Martin Fowler)* * [Database Migrations Done Right](http://www.brunton-spall.co.uk/post/2014/05/06/database-migrations-done-right/) * [Awesome Scalability](https://github.com/binhnguyennus/awesome-scalability) * [The Single Most Important Internal Email in the History of Amazon](https://www.sametab.com/blog/frameworks-for-remote-working) * [Build Your Own X](https://github.com/danistefanovic/build-your-own-x) ## Technologies * General * [Big-O explained in plain English](http://stackoverflow.com/a/487278/472433) * [Coding Interview University](https://github.com/jwasham/coding-interview-university) * Javascript * [SuperheroJS collection](http://superherojs.com) * [JS: The Right Way](http://jstherightway.org) * [Frontend developer handbook 2017](https://github.com/FrontendMasters/front-end-handbook-2017/blob/master/SUMMARY.md) * Machine Learning * [Awesome Machine Learning](https://github.com/josephmisiti/awesome-machine-learning) *(GitHub)* * [Best resources of everyday ML learning](https://www.quora.com/As-a-data-scientist-what-is-your-best-resource-of-everyday-learning) *(Quora)* * [Machine Learning Crash Course: with TensorFlow APIs](https://developers.google.com/machine-learning/crash-course/) *(Google)* * [Deep Learning For Coders](http://course.fast.ai) * Big scale * [What is CAP Theorem?](https://www.quora.com/What-Is-CAP-Theorem-1) *(Quora)* * [CAP Theorem: Revisited](http://robertgreiner.com/2014/08/cap-theorem-revisited/) * Security * [SaaS CTO Security Checklist](http://cto-security-checklist.sqreen.io) * Cloud * [Open Guide to Amazon Web Services](https://github.com/open-guides/og-aws) * [Amazon AWS in Plain English](https://www.expeditedssl.com/aws-in-plain-english) * [Microsoft Azure in Plain English](https://www.expeditedssl.com/azure-in-plain-english) * [Google Cloud Services for the AWS expert](http://cloudacademy.com/blog/google-cloud-services-aws-expert/) ## Startups * [What are the things startups have to get right?](https://www.quora.com/What-are-the-things-startups-have-to-get-right) *(Quora)* * [85 Things I learned being a CEO](https://hackernoon.com/85-things-i-learned-being-a-ceo-4c25fc1c7b99) * [What’s the Second Job of a Startup CEO?](https://blog.ycombinator.com/the-second-job-of-a-startup-ceo/) * [Things I will tell my kids if they become entrepreneurs](http://www.slideshare.net/laurenthaug/things-i-will-tell-my-kids-if-they-become-entrepreneurs) * [What do VCs really look for when making investments?](https://www.quora.com/What-do-VCs-really-look-for-when-making-investments) *(Quora)* * [What would a CTO equity be for a small startup?](https://www.quora.com/What-would-a-CTO-compensation-equity-be-for-a-small-startup) *(Quora)* * [As an employee of a startup, how do you know when to quit?](https://www.quora.com/As-an-employee-of-a-startup-how-do-you-know-when-to-quit) *(Quora)* * [Pitch deck collection from VC funded startups](http://alexanderjarvis.com/2015/05/19/pitch-deck-collection-from-vc-funded-startups/) * [YC’s Series A Diligence Checklist](https://blog.ycombinator.com/ycs-series-a-diligence-checklist/) * [Options vs Cash](https://danluu.com/startup-options/) ## Related stuff * [Knowledge-Sharing Architects As An Alternative to Coding Architects](http://ithare.com/knowledge-sharing-architects-as-an-alternative-to-coding-architects/) * [Ten Rules for Negotiating a Job Offer](https://medium.freecodecamp.com/ten-rules-for-negotiating-a-job-offer-ee17cccbdab6) (also: [HackerNews discussion](https://news.ycombinator.com/item?id=12197795)) * [What are best practices of experienced programmers?](https://www.quora.com/What-are-some-traits-practices-of-experienced-good-programmers-that-every-beginner-programmer-should-know) *(Quora)* * [Falsehoods Programmers Believe About Names](http://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/) * [2016 European Software Development Salary Survey](http://www.oreilly.com/programming/free/files/2016-european-software-development-salary-survey.pdf) *(O'Reilly)* * [DevOps: Bringing development and operations together](https://www.atlassian.com/devops) *(Atlassian)* * [DataOps](https://en.wikipedia.org/wiki/Dataops) * [How to Prepare a Talk](https://www.deconstructconf.com/blog/how-to-prepare-a-talk) * [Undervalued Software Engineering Skills: Writing Well](https://blog.pragmaticengineer.com/on-writing-well/) * [The Pyramid Principle](https://medium.com/lessons-from-mckinsey/the-pyramid-principle-f0885dd3c5c7) * [Senior engineer’s checklist](https://medium.com/@littleblah/my-top-25-items-in-a-senior-engineers-checklist-c8e9f9f6e3c2) ## Product * [What Makes a Great Product Manager](https://hackernoon.com/what-makes-a-great-product-manager-3c1d03b90356) * [If You Don’t Think You Need a VP of Product...](https://www.saastr.com/if-you-dont-think-you-need-a-vp-of-product-marketing-etc-then-you-havent-worked-with-a-great-one/) * [Red Oceans: How to Find Profitable Startup Ideas](https://capitalandgrowth.org/articles/770/how-to-find-profitable-business-ideas.html) * [Product North Star Metric](https://amplitude.com/blog/2018/03/21/product-north-star-metric) * [What distinguishes the Top 1% of product managers from the Top 10%?](https://www.quora.com/What-distinguishes-the-Top-1-of-product-managers-from-the-Top-10/answer/Ian-McAllister) - *(Quora)* * [How to Hire a Product Manager](https://library.gv.com/how-to-hire-a-product-manager-6be89e3533fd) * [The Secrets Of Creative Thinking](https://www.lemonade.com/blog/creative-thinking-hacks/) * [StellarPeers - Product Management Interviews](https://medium.com/stellarpeers) * [Product vs. Feature Teams](https://svpg.com/product-vs-feature-teams/) * [Most Startups Should Be Deer Hunters](https://bothsidesofthetable.com/most-startups-should-be-deer-hunters-7fdecf58f4f6) ## Marketing * [Developer Marketing Guide](https://www.devmarketingguide.com) * [Top Resources for Startup Marketing and PR](https://docs.google.com/spreadsheets/d/1tAiya71mDQgtwn_F9-mNQhuc7GdsQ5e2_BeG69Cb82A/edit#gid=0) * [SaaS Email Marketing Handbook](http://saasemailmarketing.net) ## More links * [Awesome Falsehood](https://github.com/kdeldycke/awesome-falsehood) *(GitHub)* * [Engineering blogs](https://github.com/kilimchoi/engineering-blogs) *(GitHub)* * [Awesome Awesomeness](https://github.com/bayandin/awesome-awesomeness) *(GitHub)* * [Awesome.re](https://github.com/sindresorhus/awesome) *(GitHub)* * [Chief Technology Officer vs Coder Thinker Organizer](https://github.com/92bondstreet/cto) *(GitHub)* * [Socal CTO](http://www.socalcto.com/2011/09/startup-cto.html) * [Curated list of CTO resources](https://github.com/92bondstreet/cto) *(GitHub)* * [Free Tools for Developers](https://free-for.dev) ## License [![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)