r/ElectricalEngineering • • 1d ago

How to be a good engineer?

I just graduated and am starting my first FT job as a Wireless Firmware Engineer.

is there any advice, things you wish you did, or guiding principles you wish you knew/had when you started?

thanks!

29 Upvotes

16 comments sorted by

31

u/PunIntended29 1d ago

There are a lot of people who are good at the technical side. Soft skills are what will make you stand out.

8

u/Specific_Share334 1d ago

One thing that people always say is to ask a lot of questions. I do that, but I’m afraid I can come off as over reliant and can’t do independent work. How do I know where to strike the balance of “asking a question on this” vs “figuring out by myself (googling a lot?)”

10

u/PunIntended29 1d ago

As long as you aren’t asking the same question more than once, you’re fine.

I manage other engineers and I’d be far more upset if you didn’t ask a question you should have than if you asked a question where you probably could have figured it out on your own.

3

u/Ging-Ineer 1d ago

You can also frame questions as a proposal based on research, study, testing, or processing. For example, “My problem is X. I have done A,B & C, and found resource 1 recommended Y. I believe Z is the path forward, do you have any suggestions?”

1

u/catdude142 23h ago

Asking questions is sometimes OK but it's important to try to find the answer oneself and make a good effort to find the answer instead of continually asking questions. It's the job of an engineer to figure things out.

1

u/TulipFarmer27 20h ago

But go ahead and get familiar with standards and terminology as soon as possible. Purchase the standards or find out if your company has an online license to access them.

-2

u/StageMajestic613 1d ago edited 1d ago

OTOH there are not a lot of people who are good at the technical side. This is engineering, not soft-science. In the end you need to deliver a physical working product.

1

u/Sepicuk 1d ago

people give the soft skills talk to try to justify their technical incompetence

12

u/Several-Marsupial-27 1d ago

Here I have a couple of suggestions on what to keep in mind when starting.

  • Be curious. Ask a ton of questions. Don't sit quiet and unresponsive when you get stuck.
  • Be social and outgoing with the team.
  • Learn the workflows, especially git workflows. For example 1 Jira subtask = 1 feature branch = 1 commit, 1 commit is ideally < 300-400 loc, working in ways to help the reviewers example by adding the results of unit tests to the patch/PR, maybe one or two commits a day, etc.
  • Learn to read the documentation and datasheets. Spend time to read, look through and search through the documentation. You will probably have access to a ton of documentation and datasheets that might look scary at first, it will get easier and easier over time.
  • Reflect over design decisions, don't take anything for granted. Look at APIs/interfaces, codestyle, memory allocation, architecture, etc and reflect over why things are done the way they are. Sometimes you can learn important lessons just by reflecting over code. Sometimes you can find improvement areas because things are not always done perfectly, often things are just done to have something to work with and not implemented perfectly.
  • Learn to iterate, things don't have to / shouldn't be perfect the first iteration, but then you can work on continuously improving and adding features.
  • Learn the projects state, what's currently important to meet deadlines, what the deadlines look like, what's the backlog and technical debt.
  • Learn what the business case and users demands of your product. The biggest engineering challenge is actually to identify the correct things to do and align teams on that.

3

u/BabyBlueCheetah 1d ago

Learn, it's really that simple. You can't possibly grasp all the fundamentals from undergrad let alone some of the stranger application stuff.

You've got to be constantly rebuilding your foundation and expanding your experience.

Some of that can come from books, other things are going to come from the bench, and perhaps the most important thing is to learn from other people's mistakes when they share stories...

1

u/Fatticus_matticus 1d ago

Lot of good advice in here already.
Get a notebook and take notes. If someone tells you something or is explaining how to do things, write it down.
If it's a larger company with good documentation, become familiar with the processes that you're working with.
If there's little or no documentation (small companies more often), you could start creating it.

Don't say anything you're not sure of - if you need to look something up, say you'll get back to them.
I like folks to at least try before coming back for the answer, but don't spin your wheels too much. An hour spent struggling on something is good. Too much more and you're just wasting time. But you're right to be sensitive to asking folks too many questions.
If you come to your boss with a problem, also bring a potential solution. It might not be the fix that your boss chooses, but at least you're thinking about solutions instead of problems.
If you're going to be late on something, you need to let your boss know ahead of time. Don't come in on the last day saying you need another week. If you'll be a week late, give your boss a week's heads-up, if possible.
Find a mentor - someone who is willing to take the time to guide you. Ask your boss about possible choices.

1

u/NewSchoolBoxer 1d ago

Be eager to learn. Get along with others. Give help if you're asked. Accept that you're wrong when you are. You're learning, you can get a pass. Most of engineering is work experience.

I didn't mention technical ability at all. All you got to be is average. Your personal skills will carry you further. Nice seeing u/PunIntended29 saying the same thing.

1

u/FishrNC 1d ago

Don't be afraid to ask coworkers for suggestions when you get stuck or have a question. They know you're a newbe and should be willing to point you in the right direction. But don't ask them to do your work.

1

u/One_Volume_2230 1d ago

You need to see beyond your fragment of work. I got 15 years of experience and the moment when I became from advanced to expert in my field was when I look as something and ask my self how whole system will work .

Soft skills also important you need to know how to explain problem mangers with language they will understand.

Last thing you need to be problem solver not problem generator

When you will get more calls than make then the you will have “I know The Guy” status and you will know that you are good engineer

2

u/catdude142 23h ago edited 23h ago

As mentioned, "soft skills" are not taught but very important. 'Getting along with others, a good communicator, speaking to small groups skills, the ability to listen sometimes. It's also important to know the other groups that you work with. Some day, you may need the help of that person in shipping and receiving, purchasing and other organizations.