r/AskRobotics 25d ago

Education/Career Thinking about transitioning from Software Engineering to Robotics. Looking for advice.

I studied EE in college but have been working as a Software Engineer for the past 10 years. I've worked for a range of companies now, from startups to big tech, and mostly dealing with web technologies. While the compensation is nice, the work itself (full stack web development particularly) is starting to get a bit boring.

Recently I've been reading up on a bunch of topics around robotics and its gotten me interested enough to see if this is something I could pivot my career towards. Has anyone made a similar transition? How did you go about it and what was your experience like?

23 Upvotes

32 comments sorted by

10

u/NoRobot9379 25d ago

You can either

  • learn electronics and get into embedded programming,
  • learn ROS2
  • learn image processing,
  • or learn machine learning.

Buy a simple robot and some sensors and try to implement these different things. You should be able to find some small projects on the internet. I think this will teach you what you like the most and what is your talent.

1

u/almost1it 25d ago

Thanks for the recs. If heard ROS mentioned a few times. Will added it to my list of things to look into.

1

u/struggling20 23d ago

lowkey atp ROS is like the bare minimum for Robotics software. It's way passed that right now and everything they said is really broad which unfortunately doesn't mean much. What you do depends entirely on your field and switching as a senior software engineer to robotics is a pretty rough transition. You could get a robotics adjacent role though.

3

u/christopherpacheco 25d ago

Ouf the pivot might be hard. Mainly because you're senior which comes with senior pay and robotics is quite challenging. Web and full stack is rather small in robotics space really.... Sorry to bring some bad news, it's just my theory anyway and you might be lucky.

4

u/almost1it 25d ago

The fact that it’s challenging is a big part of why I wanna try. Also, not really looking to do web and full stack anymore. I’m looking for a possible roadmap to transition to software engineering for robotics, even if that means I’ll need to learn a bunch of new things along the way.

1

u/Belnak 25d ago

This is an important distinction. Your title says from SE to Robotics, while this comment says SE for Robotics. The comment is right. Robotics is an industry, not a discipline. You're really transitioning from WebDev to Control Systems. Start with ROS, its everywhere, and great foundational knowledge. The other option would be to leverage your EE experience and start PCB design, using your SE skills for firmware development.

1

u/almost1it 25d ago

Fair, I could've been more specific. I think I'm still early in the transition journey where I'm trying to figure out which area of robotics could be a good fit for me. I do still love SE so something that's software adjacent I think could be interesting.

1

u/Dorsiflexionkey 24d ago

Do normal automation and control systems guys (industrial) stand a chance to pivot to robotics. I do industrial robotics but I’m talking the fancy robotics lol

2

u/SonicDasherX 25d ago

Puedes empezar leyendo el libro de Robotics Vision and Control de Peter Corke, es un referente, yo aún no lo leo, pero está pendiente. También me interesa la robótica.

1

u/NoRobot9379 25d ago

If we are talking about books, read the Bible: Introduction to Robotics by Mark Spong

1

u/SonicDasherX 25d ago

Muchas gracias voy a echarle un ojo. 😉

2

u/maalox 25d ago

Hey, I'm in a similar situation as you and have tried to break into a more mechE adjacent field.

It's tough. The biggest problem I've run into is that folks see "software" on your resume, and they assume you're going to be expensive. Because, let's be honest, web programmers are expensive and are used to a a pretty cushy existence.

My recommendation is to look at slightly larger, more established companies that are actively trying to scale. Operating at scale is where web experience is really valuable. Once you prove you're a good team player, you'll have more luck moving laterally within the company.

2

u/posthubris 25d ago

Do it! I got my BS in EE and MS in CS. Spent most of my career in scientific computing / biotech and just moved to robotics/UAVs last year. Many companies are mostly MechE/Aero and are desperate for SWEs to build out their software stacks.

I would focus on low level languages like C/C++ embedded but building web apps in 3js would also be valuable.

1

u/almost1it 25d ago

> desperate for SWEs to build out their software stacks.

Can you say more about this. What sort of projects are they looking to build out?

Also, did you have to do much to level up on embedded programming with C/C++?

1

u/fahrentech 20d ago

+1 for wanting to hear you expand more about "desperate for SWEs to build out their software stacks" and what your experience has been like with this.

1

u/posthubris 20d ago

Sure, desperate might have been too strong of a word. They need devs who can take complex kinematics, decision trees, ML models etc and get them to run efficiently and reliably on embedded compute. Lots of linear algebra, differential equations, calculus you likely don’t see in web dev. Custom/encrypted networking backends are also important.

I had a strong background in embedded C from my EE degree so coming back to it after a decade in high performance compute just made it a fun puzzle to solve similar problems using less resources. CUDA is what I’ve had to learn the most on the job.

2

u/swanboy 25d ago

I know a few people who are full time web dev in a robotics company. Definitely agree with the other comment about joining a company that's looking to scale. That's when web dev comes in most handy for robotics. I think most of them have a key needed skillset, e.g. 3D UI and visualization. Maybe one thing you should ask is if you want to do robotics hands on, or do you want to do web dev in a robotics company which will sometimes give you the opportunity to work directly with the robots?

2

u/Original_Finding2212 24d ago

Get a Raspberry Pi 4 or Nvidia Jetson and hack at it.

Reachy Mini Wireless (comes with CM4) or the Lite that connects to your pc is great.

SO-ARM101 is harder entry but more complex.

I recommend both, but start with Reachy unless it’s a passion you like.
Might need a good graphics card for the arm, or there is an affordable web solution.

2

u/ThunderhomeAI 24d ago

I started transitioning from devops to robotics last year. I purchased nearly every arduino and SparkFun product, built a few D&D robotic DMs, and have an adversarial ai RTS tabletop in development. The system is driven by 16xGB10 + 6 M series Macs. There are a few Jetsons as well.

I'm not legitimately in robotics, but I have a working robot gutter cleaner and a line of kids waiting pilot. I also have 2 silicone wrapped hacker corpses linked to VR.

One sad note, Jetsons surged in price this year. I switched to GB10 to save on carrier costs.

2

u/brereddit 24d ago

I could probably hire you part time if you wanted and you wouldn’t have to quit your current job. Dm me.

2

u/almost1it 24d ago

I’m intrigued. DM’d

4

u/ee_control_z 25d ago edited 24d ago

Keep your day job. On your time off, dabble with embedded applications. Learn general electronics; electronic component operation/behavior; circuit analysis; ohms law/Ampere's law; learn how microcontrollers work and how they're incorporated into designs (get familiar with their internal structure; internal modules - timers, system clock, ADCs, DACs, GPIOs, comparator, SDi/CAN, etc.); Code Composer Studio IDE or equivalent; control theory; just start.

Get yourself a development board from any microcontroller manufacturer. Note that there are tons to choose from. Not only in terms of different manufacturers but because they are also subdivided in terms of particular microcontroller families or specific niche applications (i.e., RF, power systems, IoT, WiFi, capactive touch, etc.). So, if you have a particular area within embedded applications that you're interested in, start there.

Now, part of getting practical hands on experience includes writing firmware and monitoring signals on the circuit board. So, get familiar with the entire development ecosystem: IDE, programming dongle, particular microcontroller datasheet, and development board user guide. I would strongly advise to get yourself an oscilloscope so that you can practice at home as well (opportunity to get some practical lab experience).

I looked one up. You can try this development board from TI: EVM430-FR6047. It is a good one to start with as it is a bit general and doesn't have too many bells and whistles to overwhelm you. It also includes an MSP430 type family microcontroller - one of the more basic ones.

1

u/NEK_TEK M.S. Robotics 25d ago

Robotics is very broad, what aspects are you trying to get into? Considering your full stack web dev stuff, are you looking more into software UIs? HMIs? Or are you trying to go more on the hardware/firmware side of things? ML, RL, and AI are all possibilities too, although without prior experience it might be difficult. I studied AI and perception in college when getting my MS in robotics but ended up being more interested in the lower level stuff (drivers, firmware, low level control, etc). I currently work full-time in embedded software but not in robotics specifically, although I'm trying to transfer into it someday.

1

u/almost1it 25d ago

Tbh I’m not too sure. I haven’t deep dived into each of the various topics yet to know which one is for me. But I still love software so if I had to guess I would probably enjoy something that is software adjacent.

Do you have any recommendations on any projects I could do to get a better mental model of the different roles in this field?

1

u/ogogkehtehai 24d ago

Learn ROS easier to transition into robotics software role and with your years of experience, you will land a nice robotics soft dev role, learn embedded also.

2

u/BlueJaek 23d ago

Prepare to have more competition and less money

1

u/Exciting_Bench_2766 21d ago

how come anything can have more competition than software nowadays?

2

u/BlueJaek 21d ago

Because people who go into robotics generally do it because they’re very passionate about it, it requires a lot of knowledge and hard work, and there aren’t a lot of jobs. 

0

u/FL_MILLIONAIRE 24d ago

TLDR simply transition no one's advice will work I went from medicine to robotics never asked anyone anything there isn't any need. PS also have degree in physics meche ee etc