3 ms·
6 years interning as a software engineer, 2 years as a PM at Microsoft, 3 years as engineer #10 at Palantir, 3 years at my own startup, 5 years working as a par
by garry 10y ago
6 years interning as a software engineer, 2 years as a PM at Microsoft, 3 years as engineer #10 at Palantir, 3 years at my own startup, 5 years working as a partner at YC
1. Work on products that other people would find useful, and then be sure to release it. Early in my career I was a contract software engineer for an agency. I was selling my time instead of making products that could be resold with zero marginal cost. I would have focused on making products sooner.
2. Either learn, or earn. The best jobs frankly are both. If you're learning, it's OK if you're not getting paid as well, and ideally it's not forever. If you're not, then you better be earning valuable equity at a company that matters. Investors get a portfolio but you only get one place to work, so it's even more important that you invest your time in a place that matters. I would probably not have worked at Microsoft knowing this. I wasn't earning or learning at the time.
3. For a while, I decided I wasn't going to code anymore. That was a mistake. Thank god I ended up picking up software engineering again. Don't ever stop coding, even for a fancy title like program manager. If a job has a fancy title, the job probably sucks. Writing software is very high leverage, and more meaningful than writing a lot of emails.
- nedwin 10y agoWhat are you doing now you're no longer a partner at YC?
- garry 10y agoHaving fun with my 9 mo old son, and working on some new stuff I can hopefully talk about soon!
- sp527 10y agoCouldn't agree more about not exiting software engineering completely. Had this experience at a prominent tech company (wherein promotion = no more coding) and it became so bad I had to walk away. I'm trying to tailor my career now to be primarily programming-oriented, but with opportunities to explain ideas/concepts and think about value creation. A relentless focus on creating business value is a huge differentiator in software engineering.
- kamilszybalski 10y agoSo much good here Gary. Stick to your gut, get shit done and always keep growing. The moment you feel that you're not growing or not adding value move on. You know your purpose and you know your value, either grow it or establish it and move on to help others.
- JDiculous 10y agoDo you still code?
- garry 10y agoYeah I do. Doing a lot of Meteor and React these days.
- umbs 10y agoHave been absorbing wisdom in this message for past 12 hours. It is very dense and very valuable. I have been professionally coding for close to 10 years and yet, there is so much take away for me from this. Thanks.