|
|
Sell YourselfWant to increase your team's productivity? Reduce Bugs? Meet deadlines? Take Jack's one day Better Firmware Faster seminar. You’ll learn how to estimate a schedule accurately, thwart schedule-killing bugs, manage reuse, build predictable real-time code, better ways to deal with uniquely embedded problems like reentrancy, heaps, stacks and hardware drivers, and much, much more. Jack will be presenting this seminar in Chicago (April 23, 2008), Denver (April 25) and London, UK (May 19). Want to be your company’s embedded guru? Join us! More info here. For hints, tricks and ideas about better ways to build embedded systems, subscribe to The Embedded Muse, a free biweekly e- newsletter. No advertising, just down to earth embedded talk. Click here to subscribe. Sell YourselfHow fast things change! A year ago I got a dozen or more emails a day from companies and recruiters looking for developers. Some were so desperate for people they were willing to pay extraordinary salaries and bonuses. Wags were pronouncing massive shortages of engineers over the coming decade. Now I’m flooded with mail from developers who have lost their jobs or feel their company is in danger of failure. Rare indeed is the message from a company trying to hire. Macroeconomics mostly baffles me, but it does seem there’s a pattern to our industry’s boom and bust cycle. The early 70s, 80s, 90s and now 00s all saw recessions of greater or less magnitude. For some reason the start of a new decade brings a slowdown. Those of the 80s and 90s even changed the political climate as incumbent presidents lost their reelection bids. Electronics always gets hit hard in these recessions. No surprise there; there’s little special about our business and so it’s natural it too should decline in sync with the rest of the economy. The 90s subordinated common sense to a fury of stock market irrationalities. Many analysts sagely pronounced high-tech as being recession-proof. Too many folks believed them and spent as fast or faster than they earned. Lifetime employment, once a staple of businesses like IBM, is long gone. There is no job security anywhere anymore. Despite Dilbert’s buffoon-like portrayal of managers, I sure don’t envy their roles. Can you imagine responding to non-negotiable forces like demanding stockholders, or empty bank accounts? By far the biggest expense for most high-tech companies is salaries. So there’s little surprise that’s the first place most outfits economize. It’s awful and brutal, and horribly impacts people’s lives, but in our capitalistic economy I can conceive of no alternative. Some would say the problem stems from the greedy Enron culture where the top dogs earn (or steal) millions or even hundreds of millions. Perhaps. Surely that’s worth cleaning up. But a problem that’s a few tens of billions in the United States’ $10 trillion economy is in the noise. The moral is that bad times always come. A hot economy is the prelude to a downturn. To us little people that means being prepared for the inevitable troubles. Squirrel away money. Avoid credit card debt. Bucks in the bank give you options and flexibility when the company folds, or when all engineers are told to take a 10% pay cut “for now”. Career ManagementBut saving is only part of a defensive livelihood strategy. I suggest that we manage our careers ourselves. No matter how beneficent and people-oriented you company may be, no one cares more about your future than you. Abdicate career-planning at your peril! Avoid stagnation. It’s sad, pathetic, really, to read some resumes and see how an individual spent decades becoming expert at a very narrow, often non-transferable, skill. One came across my desk recently that more or less read “12 years at xxx company creating test procedures for the AN-xxx radar system scanning mount”. The resume-reviewer at a potential employer will dump this one in a heartbeat. When my dad worked at Grumman in the 60s a mechanical engineer there became the world’s expert on lunar rover wheels. He spent almost a decade perfecting the technology and his skills in this infinitely-narrow arena. The economic nosedive of the 70s saw him on the street, pumping gas (for younger readers, there was a time when gas station attendants actually put the fuel in your car for you). Perhaps his skills could translate to other, more diverse, areas, but the resume’s black and white facts condemned his career. Our industry’s career-killer is maintenance. “Joe, you did such a great job on that project that, well, no one knows the system like you. So why don’t you maintain it for the next few years?” Sure, maintenance is a critical part of any software project. It’s unavoidable, and developers who do their best to dodge it do their companies a disservice. But all things in moderation. An outfit I visited recently rotates developers through a part-time maintenance schedule: every 6months each engineer puts in 20 hours a week for two months taking care of old projects. That’s not a bad solution. More people understand the old technology. The company gains by not being so dependant on a single person, and the staff have more fun and better employment prospects in the future. Lawyers tell us to audit insurance policies and wills regularly. Nothing wrong with that, but I think it’s more important to manage life than death. In the best of times and in the worst of times routinely update and tune your resume. Pretend you are a tired boss tasked with hiring, made a bit cynical by digging through a pile of resumes with their exaggerated claims. How can you appeal to that person? It’s a competition, in a sense a battle against your peers. The resume is your main and perhaps only tool to get a foot in the door. It’s the key that may get you admittance to the interview. Post-interview, most employers review the resume, make notes on it, highlight the good stuff and problem areas. It’s circulated for comments. A crummy resume – and in bad times, anything that’s less than stellar – will doom your job search. Sales and MarketingThis critical document is a selling tool. A lot of us hate the thought of sales and marketing. I remember as a very young and very naïve engineer telling a group of older folks how engineering is so “pure” and unsullied by the grittiness of sales and marketing. They all laughed, and rightly so. Everything we do is sales. How do you convince your boss to get new development tools? Sell him. Show how the benefits outweigh the costs. Want to get your colleagues to start using UML or eXtreme Programming? Better sell them, hard, since change is always difficult. Show them the upside of the change. Be prepared to push for some time, as the biggest changes need the most selling. Hit them on all fronts. Successful sales means we must speak the customer’s lingo. Too many engineers never get this, and talk to their bosses about bits and bytes when those individuals really want cost/benefit ratios. Write your resume to communicate clearly what you’ve done to someone who probably doesn’t have a clue about your specific field. Acronym overuse is a mistake. None of us know them all; worse, a lot are industry-specific. Few folks not building colorimeters, for example, know what CIE means. It’s best to describe your projects in terms any working engineer knows. An example snore-inducer: “Worked on DOB-EKV project, used Shear/Mellor in C++ on Galazor 3.12 compiler running CDC1412.” Yuk. Who cares what compiler, let alone version, you used? What did the system do? Who used it? Did it work? Was this a big job… or did it take you 6 months because you’re incompetent? Better: “Wrote the DOB-EKV star tracking software for Marshall Space Flight Center. Used Shear/Mellor methodology and an object-oriented design. I wrote 25k lines of C++ running on an ARM processor. Six month project that flew successfully.” Most resumes start with career goals. They’re a waste of space, and are better handled in the cover letter. Let’s face it: the prospective employer, at this early stage, cares little about you as a person. Most are thinking only in terms of “can he do the work?” Replace that with a paragraph that states what you’re really good at; better, write one that tells the company how they can use you effectively: “Though I have written over 50k lines of GUI code in the Windows environment, I’m one of the best 8051 assembly and C programmers around. I can build tight, fast interrupt handlers for you, and am a master of working with an RTOS. If your product has performance constraints, limited memory resources, or tight timing, I’m the man for you.” Traditionally this sort of salesy prose goes into the cover letter. That’s a mistake. They get only a fraction of the scrutiny devoted to the resume. Figure anything in the cover letter will be forgotten or de-emphasized, so make sure all of the meat, everything you want to say, is in the resume itself. We always conclude our resumes with a laundry list of languages and tools we’ve used. Though it does make sense to show a breadth of experience, the reader can’t tell how well you know these things. Surely no one is an expert at everything. Instead, consider: “Expert at C (over 100k lines), C++ (50k), assembly (50k). Very good at Perl, Fortran. Have completed projects in Modula, Pascal, Ada, and Algol.” The evaluator will appreciate the more coherent information and the honesty. Resumes targeted at US companies should be 2 or three pages long. A single page is appropriate for a new grad; 5 pages is too much. Note, though, that overseas longer is better; 5, 7 or even 10 pages may be OK if you have a lot of experience. At that length figure on more descriptive prose and fewer bullets. Include lots of contact information. The experienced resume reader expects a pretty high BS factor. Prove your points by including references (don’t make the reader ask for them), and phone numbers and contact names for every job. If you had one bad experience, leave the contact information off for that one job and be ready to explain the circumstances, honestly, in the interview. Everyone understands that if you’re looking around while still employed you’d rather not have the current boss contacted, but it’s best to be explicit about your wishes. Be sure it’s easy to contact you. I’ve seen resumes with neither email nor phone. That hardly speaks well for someone wanting a cutting-edge technology job. In the USA, if applying for an engineering/software job, don’t call the silly thing a CV (curriculum vitae). That’s pretentious, used mostly by people applying for academic jobs.
|