person at work desk

9 things I wish I knew for my first engineering job

Maybe you’re nervous about your new job, or perhaps you’re excited. Perhaps you don’t really care either way and are just looking forward to a paycheck. Regardless of how you feel, when you start your job, you’ll be spending over a third of your waking hours at work. Here’s how to do your best with that time – and do it in a healthy, wholesome way.

I started my first full-time engineering job several years ago now. I’ve been through a few job changes and a few more manager changes. Here’s engineering job advice that I’ve learned from others and through my own experience.

This is geared towards engineers, but much of it is relevant to everyone starting a new job. As always, feel free to pick and choose the advice that works for you!

Your job is not like college

Your grades, your ability to pull all-nighters to cram for a test, and your extracurriculars don’t matter anymore. Your problem-solving skills do matter.

The problem space is vast compared to the problems you solved in school. You will be solving open-ended problems that may not have right answers. You are also balancing priorities: some things need to be done quickly but with lower quality, and some things need to be done with high quality and can take a long time.

In addition, your work lasts a lot longer; you don’t get to throw it out every other week for the next assignment. This also means you (or others) have to keep working with what you did last month or last year. In addition, you will get to see your work being used, which is usually rather satisfying.

You will no longer get assignments where the TAs took care of all of the setup and the not-interesting work for you. You don’t just get cute and interesting problems anymore. Most stuff doesn’t work straight out of the box. You have to do your own setup (and ask for help with it), too.

It’s a whole new world. Don’t assume that because you did well in school, you’ll do well in your first engineering job. As with anything new, start with an open mind and learn from those around you.

Keep learning

Learning is the best way to advance in your career, switch to another career, or start a side hustle. Luckily, doing things on a job is one of the best ways to learn, because you’re solving real problems, you have support and can learn from others, and you’re around other motivated people. Take advantage of the learning opportunity, and learn everything you can.

Learn both deep and wide. The perfect balance is up to you, but do both. Deep learning often makes you a more valuable and helpful employee, and deeply learning a few things will help you pick up new things in the future. Wide learning helps you broaden your skill stack.

A skill stack (or talent stack) is a set of diverse skills that together enable more possibilities than being very deeply skilled at a single skill (more detail here). This term comes from Scott Adams, the author and Dilbert cartoonist. My own skill stack looks a bit like this:

  • Engineering (general, plus a few specializations)
  • Project management
  • Communication (writing and speaking)
  • Biology (skill in progress)
  • Cooking

Time has yet to tell what opportunities my skill stack is going to make available for me, but some possibilities might be:

  • Starting a science-backed health blog 😁
  • Working for a biotechnology company
  • Starting a summer program for aspiring engineers
  • Building robots that create really excellent-tasting food based on the biology of plants (okay, maybe this one’s a bit far-fetched 🙃)

The point here is, make sure you keep learning while on the job. Learning takes many forms – for example, a frustrating project can be a learning experience – but if you’re constantly bored at work, not only is that a waste of one-third of your waking hours, but it’s also a missed opportunity to be learning and growing.

If you’re not learning at work, talk to others and look for other projects you can get involved in. Start a side project (I highly recommend side projects). If it doesn’t seem fixable, look outside your company.

Ask questions

In school, the lecture or the book typically has all the answers. In a job, while you do need to use your own logic and reasoning to figure some things out, a huge amount of information lives in the minds of senior engineers, in the mind of your boss, with engineers who have left the company, in outdated documentation, etc, etc. In order to learn that information, you have to ask questions.

The more questions you ask, the better you’ll get at identifying when you should figure something out yourself versus when you should ask someone. When you’re starting out, err on the too-many-questions side. A good senior engineer will also help point you at resources that enable you to figure out more things for yourself over time.

It is part of the job of senior engineers to mentor and grow junior engineers. (If that’s not true at the company you’re joining, you may want to find another company.) This means that when a senior engineer gives you a convoluted or jargon-filled response, you should not feel obligated to feign understanding. Ask questions until you understand.

Related post: How to be Naturally Confident

Another way to look at it is: as an engineer, you’ve probably been hired for your reasoning and problem solving skills. Your question-asking may actually uncover something wrong, and if it does, that’s a very good thing, because you’ve put those reasoning skills towards improving your project and company.

Understand the big picture

What is your team trying to achieve? What is your part of the organization trying to achieve? What is your company trying to achieve? How does your team contribute to the org and the company?

What products make the company money? Which ones are research projects? How much does the company care about its bread and butter versus the research projects? How do the bread and butter projects work, and how does your team contribute to them?

Knowing why you’re doing what you’re doing is not only motivating, it’s also incredibly valuable for making good prioritization decisions. When you’re first starting out, your boss or mentor might make most of the decisions for you and tell you exactly what tasks to complete. This is fine for a while, but you’ll eventually need to:

  1. First, divide and prioritize the tasks within a component on your own. This usually just requires the maturity of engineering skill.
  2. Then, prioritize features within a project or across projects. Project managers and your boss should be helpful here, but project managers are not always available. Having a good understanding of the big picture is essential for making good decisions at this stage.

The big picture is also important for understanding how the company is doing, and how important your role is to the function of the company. Having a more important role in a better-performing company tends to result in more opportunities for learning.

Set boundaries

Go home at 5pm on your first day. And on your second. And every day for the rest of your career.

Don’t respond to messages or emails on weekends. Or after 5pm. Or in the middle of the night. When you respond to a message the next morning, don’t apologize for keeping the sender waiting; leave out the apology and just respond to the content of the conversation. It may feel awkward the first time, but it gets better.

If someone is messaging you near the end of your work day, let them know you’re signing off at 5pm, but you’ll respond first thing the next day (or on Monday, if it’s Friday).

Of course, it’s unlikely you’ll be able to do all these things every single day of your career, but I highly encourage making these your general rules. I’ve found that when I set a pattern, other people learn it and go with it. If you respect your time, other people do too.

Setting boundaries results in the obvious benefits of having more uninterrupted personal time (or a better “work-life balance”), but it can also result in some non-obvious benefits.

One non-obvious benefit to setting boundaries is that when you set boundaries, you force yourself to improve your prioritization. Imagine two people, Alice and Bob, who have the same 10-item to-do list. We can pretend that each to-do item takes 7 hours to complete:

  • Alice works 7 hours a day. She completes the 3 most important things by Wednesday. As a result of doing those things, she finds 2 more important things to do, and does them on Thursday and Friday.
  • Bob works 14 hours a day. Wanting to do everything, he works hard and completes all 10 items, in no particular order, by Friday.

While sometimes we may need to be more like Bob (but hopefully working more like 9 hours, not 14), Alice’s ruthless prioritization has resulted in her completing more important work than Bob in half the time.

Set boundaries. Like I mentioned above, there is always something else that can be done if someone has time. Protect your own time, because no one else is going to protect it for you.

Ask for feedback

Ask your boss and the senior engineers you work with if they have feedback or suggestions for how you can do a better job. If they give you constructive feedback, thank them for it. If their feedback is not clear to you, ask questions to make sure you understand it.

You don’t have to follow all the feedback, either. Once you understand it, reflect and evaluate whether you’d like to make a change.

Asking for feedback is a great way to discover your blind spots. Sometimes, we think that to do a good job, we need to be the best at skill A, but our boss or a more experienced engineer with a wider view of the world can see that a little bit of skill B would be more impactful.

In fact, basically that exact thing happened to me. I thought I needed to get better at core engineering skills, but a great boss and mentor gave me feedback that I had fine engineering skills, and improving my ability to talk about what I did would be much more valuable.

So, remember to ask for feedback.

Give feedback

If you find yourself frustrated by something that you don’t know how to fix, don’t just keep it to yourself and let your frustration build. That’s bad for you, and it’s bad for the company, especially if other people feel the same way you do!

To be clear, I assuming here that you trust your boss and that he wants the best for you. If you don’t trust your boss and suspect that he might treat you poorly as a result of giving the feedback, you probably want to hold back. I personally have not experienced any adverse effects from giving feedback, but I may just be very lucky. Use your best judgement.

When you feel frustrated by something, it’s a signal to you, and to your boss, that there may be a problem that needs to be fixed. Sometimes your boss might hear the same frustration from multiple people and really see a need for change. But if your boss hears nothing at all, he/she will have no idea there might be something wrong.

When you give feedback, you don’t have to be as specific as “I think X is wrong and we should do Y instead.” For many things, or when I’m developing a relationship with a new boss, I like to give softer feedback, things like:

  • I’m feeling nervous about our team completing X on time
  • It may just be me, but when our team meetings last longer than an hour, I sometimes feel very exhausted.
  • I could just be sensitive, but sometimes I feel like the new coworker talks down to me.

Such “data points” can be very useful for your boss, especially if he observes a pattern of similar data points.

So, if you can, give feedback.

Ask for what you want

In the same way that your boss can’t know there’s something wrong unless you share feedback, your boss also can’t know what you want unless you tell her. Neither can your coworkers or mentors.

When you ask for what you want, you’re much more likely to get what you want. For example, if you want to work on something different, it’s unlikely that someone will guess the exact thing you want to work on and offer it to you. Your coworkers can’t read your mind.

Also, if you think you deserve a raise, you are very unlikely to get one unless you ask. If you don’t ask, others typically assume you’re happy with things the way they are.

In addition, when people know what you want, they know what opportunities to recommend to you. This is especially important for your boss or any mentors – they typically have a wider view into opportunities on new projects and more.

Be able to explain your work

Being able to clearly communicate what you do, what you’re working on, and a few technical details goes a very, very long way. I’d venture to estimate that it’s one of those things that takes 20% of work and goes 80% of the way towards other people thinking you’re a good engineer. (The remaining 80% of the work is actually becoming a good engineer, which is still super important… but you already knew that.)

Engineer communicating a thought

Being able to explain your work is useful for communicating with your boss, your team, your sister teams, people you meet outside of work, and interviewers for your next job opportunity.

A great way to practice explaining your work is to administer interviews for your company, if you can. At the beginning of every interview, you introduce yourself and explain what you do! Interviewees may even ask you questions about it at the end of the interview, giving you the opportunity to practice more.


So, that’s my best advice for starting your first engineering job, or 9 things I wish I knew when I started my first engineering job. Thanks for reading, and best of luck to you on your journey! Also, if you found this helpful, share it with a friend!


Leave a Reply

Your email address will not be published.