May 2008
Become an Embedded Software Engineer
By Jim Dalley

 

Embedded software engineers make things smarter.  What kinds of things?  Well, I created the first Energy Star dishwasher.  I designed data buses for large trucks and buses, yes, a bus data bus. 

In the 1970s, I was one of the first to make the diskette work to store data.  I have connected things to computers using USB and Ethernet, made human interfaces for computers using LCD screens and keypads.  I have even worked on civilian and military avionics software. As a child, I dreamt of inventing a lawn mower that would mow lawns automatically.  Now I am involved with the Annual Autonomous Lawnmower Competition, where engineering schools compete by designing lawn mowers to automatically mow the grass using differential GPS navigation.

Embedded software engineering is a dream job. I get to create things that are smart enough to do a job by themselves.  Embedded software engineering is programming a microcomputer that is inside of some product. Microcomputers are integrated circuits that include a microprocessor, memory and I/O (Input and Output) interfaces. Often these microcomputers include timers, analog-to-digital and digital-to-analog converters, serial interfaces and other specialized circuits.

Wireless communications circuits will be included on the same integrated circuit as the microprocessor in the near future. These microcomputers cost as little as a dollar or two in large quantities, but someone needs to program them to do something useful. As an embedded software engineer, you might program space vehicle control systems, biohazard sensing devices, automotive engine controls or household appliances.

Beware, the Microcomputers Are Coming

Perhaps you are concerned that your skills will become obsolete when a microprocessor replaces electronics or mechanical devices that you design.  Instead of dreading the future, you might want to prepare to be assimilated into that future.  As the microcomputers continue their march to invade everything, you might find it fun and rewarding to be in control.

How Do You Become an Embedded Software Engineer?

You may already be an expert in electronic or mechanical design.  If so, then you understand how the things in your industry work.  If you understand how these things need to be controlled to do the job better, then you could guide an embedded programmer or you could become an embedded software engineer.

Programming

You will need to add programming skills to your technology toolbox.  C language is the best tool for most embedded software projects. C language was created by Bell Telephone Laboratory engineers to control telephone equipment. The computer science world has forgotten C language in favor of Java, C#, C++ and the language du jour.  These object-oriented languages boast that they hide implementation details from the programmer. Embedded programmers need to know the implementation details. C language generates code which makes sense to an assembly language programmer, so it is easier for a human to understand and debug. C language generates very efficient programs.

Find a course that teaches you to control hardware with C language programming. You want to become accustomed to defining memory-mapped addresses to be used to read and write hardware registers to control timers and read status of hardware devices.  Learn how to use at least one of the operating systems used for embedded software. These might include VxWorks, Windows CE and Linux. You should also learn to create stand-alone programs that do not have an operating system.

Learning the Jargon and the Tools

The world of programming has its own vocabulary, mostly based on abstract paradigms.  You want to learn how to use the latest software tools which will be used by potential employers. You can acquire a wealth of information by participating in Webcasts produced by the software and hardware tool vendors.

Ziff Davis sponsors many instructive eSeminars. Vendors of IDEs (Integrated Development Environments) and other tools also sponsor online seminars. These webinars tend to run for an hour. On a typical day, I receive three email invites to online seminars. They are free and you can access them from your Web-enabled computer. If you have schedule conflicts, you can usually watch a rerun of the seminar at a more convenient time.

Oftentimes, the vendors will bribe you to participate by having a drawing for a Zune or some such prize. I attended a local seminar recently, where the integrated circuit manufacturer gave me a complete development kit that plugs into my USB port, and two postage stamp microcomputers with wireless communications built in. They also fed us a great lunch.  It was all free and I can’t wait to design those tiny microcomputers into products that can talk to each other, wirelessly.

Summary

If you are an experienced in designing electronics, learn C language and put your resume on Dice.com.  List all of the operating systems, microcomputers and other tools that you know.  Recruiters will be looking for certain technical terms in the resume, so list them all. Each job will teach you new skills, so be sure to add them to the resume. Unless you live in Sunnyvale, California, it helps if you are willing to travel to get these jobs. Contract jobs are great resume builders. Embedded software engineering jobs provide a sense of creative satisfaction. Plus, they pay very well. Everything is becoming computerized, so you might as well get in on the fun.


If you would like to submit an article providing an insider’s view of your tech or engineering job, please send your article to us at ITtrenches@dice.com.

Comments on this article? Share your feedback on our discussion forum, Dice Discussions.

*Please note, you must be a registered job seeker in order to submit your question to Dice Discussions.
Search Jobs

Did you know?

Many hiring companies who use Dice search our resume database before posting jobs. That means many of the best jobs are never even posted. Post your resume now, and be sure not to miss any opportunities.
Post Resume Now

More Career Insights

  • Technology Today
  • Cover Letters & Resumes
  • In The Trenches With Dice
  • Local Market Reports
  • Dice Discussions
  • Copyright ©1990 - 2008 Dice All rights reserved. Use of this site is subject to certain Terms and Conditions.