![]() As software engineers it is our responsibility to the company to give the techs the tools they need to ship product. The best are usually culled and assigned to work in engineering support, leaving production with workers who may be skilled but who are certainly not rocket scientists. Very complex products are tested and repaired by technicians with little formal computer training. A production person probably has never heard of any of these concepts he looks at testing as the daily routine of ensuring each and every unit works correctly before being shipped. To a programmer the word "testing" conjures images of correctness proofs, exhaustive software trials, and code coverage analysis. In high volume situations they know how to bring test points out or otherwise expose the circuits so automated test systems can exercise every node.įirmware folks largely haven't learned this lesson. Hardware designers know that pushing timing margins or ignoring electrical specs may result in a system that works on the bench, but that will be unreliable in production - and thus expensive to manufacture. Remove a few minutes of hassle from manufacturing and you've leveraged that few minutes by the number of units built. Engineering is only done once (well, OK, we do tend to iterate, sometimes forever, getting bugs out, but you get the idea), yet production goes on day after day, for the life of the product. Too many developers, never exposed to the harsh realities of the production floor, fail to understand that small changes in the system's design can greatly reduce the time required to build, test, or repair a product. Fewer still have the opportunity to see the widget in production, or to work with the technicians and assemblers who sweat 8 hours a day building the engineers' wonderful creation.Īll employees are hopefully working towards common corporate goals, yet each has a different vision of the company's needs and problems. Few engineers see their product over its entire development cycle. Each is focused on one part of the company's activities - perhaps getting one particular subroutine to run. Employees packed like sardines into a sea of cubicles barely know their neighbors. Nimble operations running with a lean staff operate less by email and memo than by yelling across the room: "Joe, what version of the compiler are you using?" Workers in the smallest of outfits wear many hats, from that of software developer to production supervisor to chief maintenance engineer.Ĭompare this to the corporate behemoth. Published in Embedded Systems Programming, April, 1996įor novel ideas about building embedded systems (both hardware and firmware), join the 40,000+ engineers who subscribe to The Embedded Muse, a free biweekly newsletter. No system is useful unless it can be built in production. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |