Hacker News new | ask | show | jobs
by menesss 1875 days ago
Hey, maybe off-topic but I felt compelled to finally create a HN account to ask a question: would you mind sharing your thoughts and motivations behind your switch from embedded to web dev?

Currently, I am an embedded system developer and I concur, I've learned a lot about data structures and how computers work because "everything is C". Especially true as I graduated as EE with more interest in software. I've been enjoying my short career so far, and like the way my thinking has changed from all learned experience. But I can't lie that I worry about whether I should be focusing on web tech and that embedded stuff will fall off. You not recommemding building a career in this area and actually making the switch intrigues me a lot.

Sorry for the wall of text, hope to hear back!

4 comments

If your concern is the ability to get jobs, I can see the point of that question. Keep in mind (I think) that it's increasingly difficult to pull off a full career of any kind of programming.

One thing that happened in embedded, and bear in mind that it ain't just low-end microcontroller stuff, is that it tends to be tightly bound to hardware. Hardware tends to be built in Asia (which I remember ramping up in the mid 1980's). Successful/higher volume products tend to be built in Asia. Engineering tends to follow manufacturing over time.

For fun, it's hard to beat specialty companies that build complicated gizmos with software in some sort of sexy business, but they are hard gigs to track down.

> Keep in mind (I think) that it's increasingly difficult to pull off a full career of any kind of programming.

Can you expound on that?

Things are evolving quite rapidly, you may be on top of your game one moment and looking for work and re-skilling in the next.
There were a few reasons to switch. I was working in the automotive industry where building anything is a race to the bottom. "How much cheaper can we make this than our competitor" was how design decisions were usually made. Software was the bottom of this list as manufacturing doesn't see it as a profit driver and mostly as an expense. I was in a pickle because I loved the projects I was working on... Ultrasonics, Radar combined with some sort of actuator or motor. Lots of FFTs, debugging boards, soldering, learning Altium and a great boss but I was always pulling nails to get money for projects. I knew I wanted to work somewhere else where the product was software / electrical hardware and I was having a hard time finding the right fit.

After talking with some friends who do webdev (Node, Python) I learned JS in a couple of weeks and got hired into a consulting firm where I worked for 6 months building a document search engine in C# on top of ElasticSearch. I now lead a team at a small firm that builds specialized search applications for different parts of the internet.

I now know of places that have the software culture (and software money) that do embedded systems well but I love what I do now with no shortage of cool problems to work on. Not sure if I would go back into embedded but I still dabble with Arduino's and Pi's.

> "But I can't lie that I worry about whether I should be focusing on web tech and that embedded stuff will fall off."

While they're never going to be as plentiful as web jobs, it seems unlikely embedded jobs are going to be decreasing anytime soon. The market for industrial and consumer IoT and wireless mobile devices just keeps on growing and growing. Unless you actually prefer webdev over embedded, there's no reason to jump ship and every reason not to waste your specialized education.

If anything, it's more likely that web development will hit a peak and then start declining. As people on HN are fond of proclaiming, much of a college education isn't needed to be a successful web developer (very much unlike embedded development). So every year, more and more people keep flooding into web development and that is bound to depress wages and demand at some point.

Not every web dev is CRUD kind of work, but you're right that low hanging fruits get picked up very fast.
My educational background is more towards EE (ECE, focused on control theory) but my work background is more towards software and IT. I've been working on embedded software for a decade or so. If anything, it seems like the embedded industry is getting bigger rather than smaller, like my role in the industry will be around for a lot longer than I'll want to be in it.

People get quite invested in their physical things, and I think that's going to translate in to ongoing software updates, and making interfaces between older things and new things (I'm currently working on an interface to old-school telephone gear, working in Rust). More things are being made with computers in them, those computers are getting more sophisticated, people are caring more about software quality and security. And, as a sibling post mentions there's always pressure to (re)engineer things to cost less or earn more money.

Sidetracking a bit, I think one of the best pieces of career advice is to be comfortable at the intersection of a couple different areas/fields. While it may be easy to find/train a developer or EE to some particular skill level (maybe not the best example given the closeness of these fields), it's much harder to get someone at that level in both fields. It sounds like you're already doing that by working as a developer but having an EE degree - you'll do well to stay sharp in both.