Skip to main content

Command Palette

Search for a command to run...

Advice I Wish I had known 20 Years Ago as a fresh CS grad

Updated
•6 min read
Advice I Wish I had known 20 Years Ago as a fresh CS grad
đź’ˇ
Connect your coding AI to dozens of tools with our all-in-1 MCP server here!

For context, I went to a top 5 college for undergrad. Later worked in Silicon Valley at a few startups, as well as big tech companies like Apple. I occasionally get asked by students for advice, so I thought I would write it down.

Don’t freak out about AI taking your job… yet

You’ve probably heard the predictions from Dario that AI will make software engineers obsolete within the next year.

You’ve maybe even seen charts like this:

but you probably haven’t seen the full context of long-term trends:

For now, just become really good at using AI in your own work, as Jensen recommends.

How to escape the catch 22 of getting your first job

Your first job may be the hardest to get, because everyone wants to hire people with experience. But how do you get that experience? Internships are probably the best way, but a lot of what you need on the job you may have to learn outside of college. So having a few side-projects in your portfolio that you’ve worked on is a good way to learn common technologies that employers may be looking for. Beyond that, here are some things you can try:

  • go to your college career fairs

  • go to talks by speakers of companies you’re interested in, and chat with the speakers afterwards

  • e-mail alumni of your college who work at companies you’re interested in, and ask for a referral or a short call for advice

  • try contributing small bug fixes or documentation to well-known open source projects, or projects published by companies you’d like to work at

Choose your own adventure

hat tip: Tim Urban

After college, there’s no longer a fixed path. You don’t just pass some tests, and move on to the next grade level. It’s not just about working hard, either: a furniture mover works plenty hard breaking his back 8-10 hours a day, but only gets paid minimum wage. A CEO may work the same hours and make >100X that. So pick carefully.

A useful framework is the Japanese concept of ikigai, which you can think of as the intersection of 3 or 4 circles in a Venn diagram:

The barbell strategy

Nicholas Nassim Taleb’s barbell strategy applies not just to investing, but your career as well once you have a spouse. If you have two working adults in your household, one of you can afford to take some risks, while the other has a stable job. I’ve seen this work in the past with startup founders, whose spouses often have stable jobs (a doctor, or a job at a large public company) while they pay themselves just a basic salary.

Optimize for growth

Given the opportunity to pick between similar roles at two companies, you will probably be better off at the company or team that’s growing faster. Growth provides more opportunities for you to be promoted, take on more responsibilities, and solves almost all problems.

Learn how to sell, because almost everything is sales

Convincing someone to join your company? That’s sales.

A doctor telling a patient that they really should get the surgery done, instead of waiting until it gets worse and risking complications? That’s sales.

Asking a girl out on a date? That’s sales.

Your boss’s boss probably didn’t go to the best college. But you know what they’re good at? Talking to people, connecting with them, managing them, and convincing them to do things.

Find a mentor, and stay in touch with them

It could be an old boss, a senior colleague, an alumnus of your college who you look up to; if there’s someone you’ve come across who you’d like to get advice from, reach out and have lunch with them. But don’t make the mistake of just doing it once - build a long-term relationship, send them regular updates, and get them invested in your success. Don’t just contact them when you need help, try to build a friendship.

Never stop learning

I don't feel that I understand cinema yet. I really don't feel that I have yet grasped the essence of cinema - Akira Kurosawa, Oscar acceptance speech

It’s unbelievable the number of colleagues I’ve met who don’t keep up with developments in the field. I knew a software engineer who was shocked that chatGPT could code, two years after it came out! You don’t necessarily need to read every new paper on arXiv, but you should go to 1-2 conferences a year, and follow a few blogs or newsletters in your field.

Share what you learn & build

The goal is not to necessarily build a massive following on social media, but to become known for your expertise in a particular area. For example, a former boss of mine got hired for a role because he had started posting technical deep dives about a topic he was interested in on his LinkedIn.

As you write, it’ll force you to think and learn about the topics you’re interested in.

Negotiate your offer, and Don't get screwed over

Use levels.fyi to know what you’re worth. Try to get competing offers. There’s no harm in asking for things - a better title, WFH benefits, a severance package.

In certain areas, employers are not allowed to ask what your current salary is.

Think like an investor; when you’re evaluating which companies to join, one hat you may want to wear is that of an investor. If you had $100k to invest in a company, would you pick the one that has the job opening you’re considering? This makes sense because that’s probably what your stock options or RSUs will be worth after a few years at the company, at a minimum. Lots of companies can give you a job, but very few will provide a good return on investment. Do your research.

Ask lots of questions:

  • what are these stock options worth? what’s the strike price or liquidation preference?

  • is the company profitable? how fast did revenue grow last year? (if it’s a public company, read their latest 10-Q report)

  • is this role a backfill or new headcount?

  • do you give annual equity refreshers?

  • can I speak to some current/former members of the team?

Invest as soon as can

Once you have some disposable income, start investing it as soon as you can. A good guide is the Stanford course Personal Finance for Engineers. Stick to ETFs for the most part, unless you have really done your research on a particular company.

Forget networking; learn to host parties instead

Your count of contacts on LinkedIn doesn’t matter, as most of them are just acquaintances that you maybe met once, or are no longer in touch with. What matters is that you have a core group of friends that you can count on for support and friendship on a regular basis. Once you’re no longer in college, it becomes very hard to make new friends and keep in touch with existing ones. One thing I’ve seen that works well is to host regular (3-4 times a year) parties for your friends. Doesn’t even have to be any special occasion. Just say you’re having a get-together, have everyone bring their spouse or friend. If you don’t have much money just order some pizzas or just hold a potluck. If you don’t have a large space, rent out a room at a community center for a few hours.