Hacker News new | ask | show | jobs
by jebarker 1044 days ago
> There is a very large embedded industry if you want that. Learn about basic electronics as well if you are interested.

What is the hiring process typically like for inexperienced embedded software positions? Is a portfolio of personal projects important or is it coding test heavy or something else?

2 comments

"It depends". Having a mathematics PhD likely means people will absolutely believe in your ability to learn new things and overcome problems. Being able to demonstrate some actual ability and/or projects would be very good. Often engineering positions have certain "requirements", particular languages or software packages and in an interview you likely get asked question about those, either structured "solve problem X" or unstructured "what have you worked on using Y". Not ticking all the boxes is okay, but I wouldn't apply if you don't have any experience with any of the languages asked for. R&D positions are usually more loose on that and you should expect to get asked more questions about your previous research, oppinions on certain subjects and so on.

In general I would say that applying never hurts. Make sure that any application includes something which makes it clear what you are interested in. Likely your particular mathematics skills won't be that relevant, so don't overly focus on them.

Embedded is a large world, from small Linux machines down to 8-Bit controllers. Knowing that landscape and where your skills/interests are in is important. I would suggest looking which companies are interesting to you and/or near to where you want to live. Also make sure where in the supply chain you want to be. At the bottom you have semiconductor manufacturers (TI, Microchip, st, NXP, etc.) and at the top you have "real products" (Boeing, Ford, Raytheon, etc.) in between there is an enormous range of suppliers and sub suppliers.

IMHO, it varies wildly from company to company. A portfolio is great and I'd expect some sort of general coding test. In general, if you can do the usual leet code tests (I know, but it's the world we live in...) can demonstrate a good knowledge of C/C++ and show you actually understand how pointers and memory work, you're probably hireable as a beginning embedded software engineer.

If you're looking for bare metal work (as opposed to embedded linux) being able to read and understand schematics is useful, though I've never had anyone ask for that in an interview.