Firmware engineers create and code firmware, the embedded software in electronics devices. An individual engineer may spend most of his time writing new code, debugging, testing, assisting in manufacturing or working in other design duties. They work with programmers and hardware designers and deliver code according to a company's deadlines.
Firmware describes any programming code embedded inside a piece of electronics that controls the device internally. Almost every electronic device contains firmware of some sort. Keyboards, remote controls, microchips, phones, cameras, calculators and hard drives all have firmware created by a firmware engineer. The programs range from the relatively simple code inside an LCD calculator to the massive and complex programs that control your computer’s motherboard.
To create firmware, firmware engineers need advanced knowledge of the related electronics and programming languages. A large percentage of firmware uses a C language variant or an assembly language, and engineers need proper experience with the languages their employer uses. Experience with electronics hardware and electrical engineering may also prove useful in locating employment.
Many companies in different industries require firmware engineers. Companies producing computers, computer hardware, consumer electronics, toys and automobiles all need firmware written for their products, and engineers may work as consultants or freelance programmers as well.
Most firmware engineering jobs require a bachelor’s degree in computer science or related field of study such as mathematics or engineering, and some require a master’s degree. Many universities offer four year programs with these degrees, though in some cases a two year certificate is adequate. Many software companies also offer additional certification courses for engineers wishing to work with specific products or vendors.
The 2010 Occupational Outlook Handbook released by the United State Department of Labor predicts that software engineering jobs will increase much faster than the average for the coming decade. The salary for software engineers working in computer systems in 2008 ranged from about $53,000 to $128,000.
- Photo Credit remote control image by Marek Kosmal from Fotolia.com
Job Description of Software Engineers
Software engineers design and program computer software. These professionals often have skill sets that qualify them to work with specific systems, applications...
Electronics Engineer Job Description
You may feel comfortable enough in dealing with simple electrical repairs such as changing a light bulb or installing a light switch....
Embedded Software Engineer Job Description
Embedded software engineers are responsible for the software controlling the processors such as microcontrollers and digital signal processors built into (or embedded)...
Duties & Responsibility of a Software Engineer
A computer software engineer, or developer, researches, analyzes and develops coding for a computer program. His work goes into the creation of...