Files
awesome-cto/README.md
2020-01-28 15:01:15 +02:00

205 lines
15 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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
* [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)
## 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)
## 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, dont](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)
## 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)
* [Whats 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/)
* [YCs 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 engineers 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 Dont 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/)
## 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)*
## License
[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)