Recently, I had the privilege of interviewing Thibaut Hourteillan, (pronounced Tee-Bo Hor-Tell-EE-an) Senior Software Engineer at Hewlett Packard in the booming, central valley town of Roseville, California.
Earl: So, what do you do for a living?
Thibaut: I am a software/firmware engineer with Hewlett Packard. My exact title is Senior Software Engineer but more precisely I do firmware and test tools design and development.
Earl: Cool, and what kind of work does that entail?
Thibaut: Currently I design and develop a test operating system to verify firmware. An operating system (OS for short) is in charge of controlling the computer and allows you to run programs on top
of it. This is what Windows and Linux are. The OS my team and I develop is geared toward testing and thus cannot run generic programs like games and word, but instead runs tests designed to verify the correctness of the system against various specification. In addition I help people with test planning and help them with failure analysis. This last part can be very exciting. You need to put your detective hat on to try to figure out what is going on, what’s failing and how to fix it, sometimes starting with very sparse data.
So I spend most of day sitting in front of three monitors designing (i.e. writing a design document), coding in C++ and assembling and testing our OS. There are also quite a few meetings as we have to work with other teams in Roseville, in Texas and in Singapore.
Earl: I see, so it probably gets pretty tedious at times, huh?
Thibaut: Yeah, like every job there is task that no one really wants to do but has to be done, like fixing old bugs or leveraging feature from other teams. Leveraging is especially painful since, as engineers, we like to develop new things and not integrate code written by somebody else (which is not always as good as what you could have written yourself.)
Earl: Hmmm… So what exactly is firmware?
Thibaut: firmware, also known as BIOS, is the low level software that is in charge of initializing a computer and putting it in a state an OS can use. If your look at your PC, you will see a few things on the monitor before Windows starts. This is BIOS, aka firmware. When a computer is turned on all the hardware pieces are in a default state and completely unaware of each other. It is the job of firmware to find all those hardware pieces, get them to communicate and get them ready for the OS. Then firmware will find the OS (usually on the hard disk) and launch it. It also presents to the OS a list of all the components present in the system.
Earl: Uh huh, and what is the firmware you design generally used for?
Thibaut: My lab designs what we call a 1 to 4 way enterprise server. This is the kind of computer you will find in big companies such as banks, petroleum companies, research centers and universities. They are used for things as varied as payroll, geological simulation, gene sequencing, inventory and supply chain management, web services, etc…
Earl: Wow, that’s really neat! Any cool job perks you feel like mentioning?
Thibaut: Playing with cool technologies up to 2 years before anyone else Flexible work schedule is another one, we work a lot but we can manage our hours kind of the way we want as long as we are here for the meetings.
Earl: What’s HP’s plan for the future of Firmware?
Thibaut: To keep doing it! More than that, and I’d have to kill you if I were to tell you. Just kidding.
Earl: Alrighty then, anything else you’d like to mention?
Thibaut: This is a cool job. Like all jobs we have our sucky days, but I think it is a very interesting, challenging, and rewarding job.
Earl: Cool! Alright, well, it’s been a pleasure speaking with you, Mr. Hourteillan.
Thibaut: My pleasure as well!