Tip 26Know Your (Corporate) Anatomy
Brown Belt[​​Brown Belt] For your first year you don’t need to know what marketing does. Once past that, it’s time to broaden your perspective.

Like people, every company will have its own personality, but they all tend to have the same basic building blocks. At a technology company, engineering tends to have a medieval view of their place in the corporate universe: “everything revolves around us.” However, it’s important to understand that engineering is just one part of the company; there are parts that are just as essential to the company’s success. “Now the body is not made up of one part but of many…If one part suffers, every part suffers with it; if one part is honored, every part rejoices with it.”[42]

The first step in figuring out your company’s structure is to dig up an organizational chart. Look on the corporate intranet for something that looks like Figure 8, Abbreviated org chart and use that to follow along with the discussion. Since we discuss the engineering organization in Tip 25, Know Your Peeps , it’s the one group not covered here.

images/OrgChart.png

Figure 8. Abbreviated org chart

Along the way I’ll include conversation starters that can help break the ice with people in other departments. If you’re naturally social, you won’t need them. In all cases, improvise away.

Administrative Assistants

This isn’t an organization per se but rather a role that shows up in many departments. The assistants are assigned either to busy executives or to groups, and they handle all kinds of stuff: scheduling, event planning, answering/placing phone calls, booking travel, and much more.

These are people you need to know because they can help with all kinds of stuff when you’re in a jam. Need to file an expense report but can’t figure out how to submit your receipts? Need to ask the CTO a question about your project but her calendar is booked solid? Need to find a conference room that you’ve never heard of before? There’s an AA who can help.

Several times I’ve known an AA who was later promoted to a position of relative power. Disrespect an administrative assistant at your own peril.

Support

The first time a product goes out the door, the company needs an end-user support team. As a programmer, you’ll need to help them do their jobs. The support tech gets a call with some vague description of “the program crashed” or ”the website spits out an error,” and this may be the first time the problem has been seen. Guess who’s job it is to dig into the code and figure out what went wrong? Lucky you.

Support is usually broken into several tiers: tier one is responsible for logging the customer’s problem, verifying the customer has a support contract, and other (mostly) nontechnical stuff. They may have a script of common troubleshooting questions they run through. (Chances are you’ve been on the receiving end of one of these scripts. “Yes, I tried rebooting my computer already!”)

Tier two and up is where the geeks live. When rebooting doesn’t solve the problem, the call gets bounced to tier two. While they may not have programming skills, they usually have very good troubleshooting skills and lots of institutional knowledge. “Oh, that error 96 usually means their frombazzle driver is down-rev; we’ve seen that before.”

As a programmer, the best thing you can do to help the support team is to make the product give them the details they need to troubleshoot a problem. “Segmentation fault” is not an error message the support person can work with. However, a detailed message that the customer can email to support is very valuable. Remember, if you don’t help support troubleshoot the problem, some unlucky programmer—like you—is going to have to troubleshoot it.

Note that it’s easy for the support staff to get disillusioned with the product they’re supporting. Understand their position: they get calls all day long from people who are having problems with the product. The people who are using the product just fine don’t call to say, “Just letting you know; all’s good here, and I’m happy.” The support staff has a skewed perception of the product’s quality. Don’t let this infect your outlook.

Conversation Starters

You may not need any conversation starters for support; they may come beating down your door. Consider yourself lucky if you get to start the conversation on your own terms. Here are a few ways to open:

You:

Hi, I work on [Product x]. What have you been hearing from the field lately about it?

You might get an earful in return. Don’t feed the fire; instead, follow with something constructive:

You:

What are some ways the product could help make your job easier?

Finally, if you make pals with a tier-two or three support person, I suggest the following:

You:

Would you mind if I sat in on a few calls or listened to some recorded ones?

These folks are talking to end users of your product all day long—wouldn’t you like to hear what the users are saying? Keep in perspective, however, that these are only the users who are having problems. Don’t let it beat you down.

Marketing

Engineers tend to have a dim and distorted view of marketing. Most engineers also don’t know what marketing actually does. Let’s fix that.

The overall goal of the marketing department is to influence people’s perceptions about your company and the stuff it sells. Those people include both customers and the press. In a good marketing organization, the feedback from people​—the market—also drives the development of new products and services.

Marketing Communications (aka MarCom)

This is what most people think of when they think of “marketing.” MarCom does the advertising, the product brochures, the logos, and so forth. The typical sarcastic response to marketing communications is that they’re there to put lipstick on a pig. But really their role is to put lipstick on whatever the engineering team gives them. If it’s a pig, then what choice do they have?

Another thing to keep in mind is that marketing communications wants to make the product look good to the customer. Your perception of the product’s value and the customer’s perception of value are probably very different. Before you complain that MarCom ignored the feature you spent a year working on, remember that a lot of engineering features aren’t directly relevant to the customer; they’re part of the supporting cast that makes the end-user features possible.

Public Relations

Where the MarCom team is primarily interested in communicating to potential customers, the PR team is responsible for talking with press and analysts. Chances are you won’t interact much with PR; however, you’ll see their press releases on your company’s website.

The press release will say lots of glowing things about, for example, your latest product. There will be some made-up quotes from executives and information on your company. If you think the press release sounds corny, remember you are not the target audience; it’s for the press.

To a writer at some industry trade magazine, press releases are a constant stream of “here’s what happened today,” and they’ll cherry-pick some to write about. They need tidbits on what’s new and some quotes for emphasis. The press release gives them this raw material. The writer (supposedly) puts their own spin on it and voila!—news is made.

Product Management

This team’s role varies greatly from company to company. A classic product manager is responsible for determining market needs and specifying what the product should do to meet those needs—this a product’s strategy. When engineering gets the directive “the product needs to do [x],” that’s usually coming from a product manager.

In the technology world, however, the product strategy is sometimes determined by engineering management, and the resulting product is pushed into marketing. In this environment, the product manager sticks to more tactical tasks such as supporting MarCom and sales.

Some product managers come from programming backgrounds; this can be a uniquely strong role for a person who’s skilled in building products and can see the technology from the customer’s point of view. If that sounds interesting to you, we’ll discuss it further in Tip 33, Find Your Place.

Conversation Starters

Knowing a few people in marketing is the first step to understanding the customers you build products for. First and foremost, know your product’s product manager. Here’s a simple intro:

You:

Hi, I work on [Product X]. Can you tell me some of the ways customers use the product?

Don’t just talk about features; talk about customers and their needs. Product managers get frustrated by engineers who endlessly talk about features without understanding the customer first.

MarCom folks are promoting the product, so ask about that:

You:

What’s the next marketing campaign you’re working on?

Or perhaps:

You:

How do you think our customers perceive our company?

In the case of PR, substitute “the press” in place of customers.

Sales

At first glance, it would appear that salespeople are mostly skilled at looking good in suits. Get to know them better, and you’ll find they’re also good at drinking and eating steak. For this reason, when you’re at a trade show and it’s the end of the day, go find a sales guy chatting up an important customer and get into the conversation. That way, he’ll invite you along, and you’ll get to drink and eat steak on his expense account.

The nature of sales depends a lot on the company’s products and business model. If your company sells direct to customers, you may have a direct sales team that does just that. Many companies sell through distributors or value-added resellers; thus, they’ll have a channel sales team to manage that business. Other companies may have a business development team that develops more strategic relationships with other companies.

In all cases, if you wonder what motivates a sales guy, find out about his compensation plan. Most all salespeople make meager salary but have big financial incentives tied to their performance. It’s not that the sales guys are a bunch of money-grubbing scoundrels, it’s that they have to bring home the moolah, or they’ll wind up making less than a McDonald’s fry cook. If your contribution to the company’s top line could be measured so readily, the company might motivate you in a similar manner, too.

Sales performance, as with company performance, is usually tracked by quarter and by year. Don’t screw with a sales guy near the end of March, June, September, and December. On the flip side, if you’re asked to talk to a customer or give a demo and you help the sales guy land a deal, you’ll have a pal for life (or at least until next quarter).

Conversation Starters

Salespeople are the easiest people in the world to start a conversation with. You probably won’t have to say a word; they’ll start the conversation for you—it’s what they do best. In the rare case that you need to take the initiative, here’s one surefire way:

You:

Want to go out for a beer?

I’m joking, sort of—just introduce yourself and ask how sales are going this quarter. Also ask what parts of the product are most compelling to customers. Programmers focus on what’s cool; the sales team can tell you what customers really pay for, which may be very different.

One thing to keep in mind is that talking to the average salesperson requires some bravado. They speak boldly and confidently—again, that’s what they do best—so it’s easy for them to dominate the conversation. If you’re not so outgoing, toughen up and don’t let their bluster intimidate you.

Information Technology

Known by many names: information technology (IT), management information support (MIS), and so forth. These are the people who manage the company’s computing infrastructure: the computers and network. This work varies from simple (keeping inventory) to very hard (tuning a clustered database). If your company’s product is a computing service, for example, cloud compute hosting, then you may have separate groups for general company IT needs and product-specific IT.

Note that the role of Unix system administrator has a history and lore to it. The role, epitomized by the Bastard Operator From Hell (BOFH[43]), is a cantankerous uber-sysadmin who will p0wn any luser who gets in his way. Unfortunately, the BOFH is much less common these days, having been replaced by more point-and-click Windows sysadmins. They’re too weary from pointing and clicking to be devious and evil like the BOFH of the past.

If system administration is your first job out of school, be careful not to get pigeonholed here. When you apply for a programming job and what you have on your resume is sysadmin, many hiring managers will trash your resume before they notice your computer science degree.

Conversation Starters

First, make sure you understand one thing about the IT guy: Unix or Windows. The easy way to tell is to look at their bookshelves:

Unix:

GNU Emacs, DNS and BIND, sendmail…or no books at all, just a tomahawk. (Warning: in the latter case, you’ve probably dealing with a BOFH, so tread carefully.)

Windows:

Windows Server Administration, Active Directory Administration, SQL Server Administration, and so forth (each about six inches thick).

That established, here’s how you might chat up a Unix sysadmin:

You:

What’s your favorite Linux distribution?

Or Windows:

You:

Have you tried the latest PowerShell?

Obviously you’ll need to improvise here for current technologies. Specifically, do not go over to IT and start whining about the Internet connection or email server if you’re trying to make friends.

Facilities

You’ll see people from the facilities team roaming the building on a regular basis. You’ll need their help when moving offices or cubes, and they’re also the folks to contact when a toilet is flooding and threatening to take out the server room. Every facilities guy I’ve met has been gruff and grumpy on the outside, and you can understand why: all day long they get calls about toilets flooding. Wouldn’t you be grumpy too?

However, the same grumpy facilities guys I’ve known have also been very laid back once I got to know them. Just be cool and show them some respect. Why is it good to have allies in facilities? For one thing, they’re much more likely to “look the other way” when they catch you working on a office prank. I was once standing on a conference room table with a bunch of ceiling tiles popped out, with spools of wire and tools at my feet, rewiring an office intercom speaker. Our facilities guy, Yer, came wandering through:

Me:

Hi, Yer, how’s it going?

Yer:

Ummm… (puzzled look) going fine…anything wrong?

Me:

No, no, not at all. You didn’t see anything here, OK?

Yer:

No problem. (walks off)

Conversation Starters

Honestly, I’ve always gotten to know the facilities people with a simple “Hi, how’s it going?“ as I run into them. They’re always wandering the building, so those encounters come up often. Then you’ll surely run into something truly bizarre—fried squirrel in the building’s power transformer, for example—and have a good opportunity for a real conversation. Be sure to ask about the most bizarre thing they’ve seen on the job.

Manufacturing

You’ll have a manufacturing department only if your company makes hardware (obviously), and even then it’s likely the manufacturing will be halfway around the world. You may have a model shop in-house, however, for building prototypes.

I enjoy making pals with the model shop folks, partly because it’s tremendous fun to run a mill. Also, there’s usually someone who can rework circuit boards with surface-mount parts, which takes tremendous skill. If you work on hardware, you will fry a board, and these people can usually fix it.

If you have manufacturing in-house, it’s likely you’ll get roped into debugging problems that show up on the assembly line when a product enters production. It takes a while to get the kinks worked out of building a new product at production scale. Tip: during development of a hardware product, you always write isolation tests for various hardware components—leave those in, hidden if need be, because they’ll be useful on the manufacturing line.

Conversation Starters

On manufacturing floors there’s a lot going on, and it can be hard to not get in the way. Because of this, I’d ask your manager to take you on a tour. Find the line lead for your product and start with something like this:

You:

I’ve always been curious how these go together. What’s the hardest part about building this product?

I’ve found tremendous value in checking in with manufacturing from time to time. Little decisions from engineering can have big impacts on the manufacturing floor; you might be shocked at the stuff these guys and gals have to put up with when building your stuff. You’ll uncover opportunities for easy product improvements that can save manufacturing a lot of hassle.

Human Resources

The first person you talked to at your company was probably in human resources (HR). They do the legwork on setting up interviews and moving the hiring process along. While they don’t make the final decision to hire, they will tell the hiring manager if you act like a jerk. Just follow along with the process and be polite.

HR also manages the benefits package: your health insurance, 401(k), and related stuff. Feel free to ask questions about these things; they’re complex, and you need to understand what you’re signing up for.

The other duty of HR is to mediate the process of employee conflicts. However, if you have a problem with a co-worker, do not go to HR first. When HR is notified of a conflict, it starts a process rolling that can spiral way past your intent. Talk to the co-worker or your manager instead. When HR gets involved, that’s when people start getting fired. The vast majority of problems are best solved without going nuclear.

Of course, if the conflict is serious—harassment, violence, that kind of thing—then it’s time to go to HR. Be aware that many levels of management will get involved and jobs will be on the line.

Conversation Starters

You won’t need any help here; HR will be your first point of contact with a company, and they’ll also get you started on day one.

Finance and Accounting

Now we’re really getting outside the realm of your day-to-day interaction. This domain gets very complicated very fast, so I’ll stick to the two-minute overview.

First, finance and accounting are two different things. Finance is focused on the future: budgeting and securing money for product development. Accounting is focused on the present and past: how the business performed and where all the money went.

Second, businesses don’t treat money like you treat your checking account. You can look at a receipt from the ATM machine and know how much money you have in the bank. A business, on the other hand, breathes money like a living being—there is constantly money flowing in and out. The accounting folks generate two key documents that show the health of the company: the profit and loss statement that is a snapshot in time of the company’s money, and a cash-flow statement that shows more of the dynamic flow of money.

Why should you care? For starters, the executives are always rah-rah-rah about the company’s potential, right up to the “We ran out of money today” speech where everyone gets laid off. The numbers from the accountants, however, don’t lie (unless there’s some real shady stuff going on). Ask your manager if you can see the P&L and cash-flow statements. In a privately held company, you may not get to see them. In a public company, they’re freely available; it’s required by law.

I’ll be frank; I don’t look at these documents often. It takes education to make heads or tails of them, and if you want to know how the product is selling, it’s a lot easier to ask a product manager. The numbers, however, give you a raw, unfiltered perspective on where the company stands, and it’s good to see them at least once.

Conversation Starters

Let me come clean; I have no idea how to start a conversation with a finance person. I’m even friends with one. I’m not sure how that happened.

On the surface, finance seems like the most boring job in the world, and the finance folks know it. They usually can’t articulate their attraction to the field. To a programmer, though, there’s a parallel that might help you relate: a good finance person understands the flow of money through a company like you understand the flow of data through a computer. Have you ever visualized the flow of a complex program in your head? They do that with things like money and credit.

I’ve failed you on a good conversation starter here, but trust me, getting to know a finance person can be quite interesting. Just don’t ask them to help you with your taxes—that’s their equivalent to “Oh, you’re a programmer, can you help me fix my computer?”

The Executives

Executives come in many flavors, and their titles vary depending on the company. We’ll look at some of the most common.

One thing to keep in mind is that these are the officers of the company, which has some specific ramifications—especially with companies whose stock is publicly traded—since they are considered the ultimate insiders. For example, they can’t sell stock except for very specific windows of time, as governed by the SEC.

Since the officers of the company give the orders, they are also the ones who ultimately need to answer for any major screw-ups. The “I didn’t know” excuse doesn’t fly since they’re supposed to know everything that’s going on. These are high-stress jobs.

Chief Executive Officer (CEO)

The CEO is the big cheese; decisions from here cannot be over-ruled. The CEO is responsible for the company at a strategic (big-picture) level and ultimately the company’s success.

I’ve observed two main types of CEOs in high-tech companies: the founder and the numbers guy. The founder is one who has been with the company from the start and truly “gets” the vision of the company and its products. If the company was funded by venture capital, chances are this founder will get ousted within two to five years. The numbers guy comes in second. He’s known for execution (delivering product, making money) and generally doesn’t give a damn about vision or products—he’s there to make sure the investors get their money’s worth.

Both styles have their advantages. Obviously the founder CEO is more inspiring to work for. The numbers CEO is going to be more reliable for making sure your paycheck doesn’t bounce. Personally I prefer to take my chances with the founder.

If you get an opportunity to talk with the CEO, by all means take it. Most CEOs who are worth anything are curious to hear how things are going in the trenches—they’re so busy with the other executives that it’s a rare opportunity for them to get the lowdown directly from a programmer.

Chief Technology Officer (CTO)

This is the lesser-cheese but the most important one to you. The CTO is responsible for the company’s technology development. She can be execution-oriented or may be more of a visionary; again, both have their benefits.

I highly recommend talking with the CTO at some point; just email and say you’d like a bit of her time to chat when she’s free. Ask about where she sees the company’s technology going and where the market is going. In turn, the CTO will probably ask you how things are going in the trenches. Be honest, and maybe brag a little about something cool you’ve done lately.

One thing to beware: most CTOs came up through the ranks—they’ve been programmers before—so don’t try to B.S. this person. Just tell things straight, even when it’s not good news.

Chief Information Officer (CIO)

Not all companies have a CIO. This executive is responsible for all the information within the company, not product development. The CTO is about product, the CIO is about information. For example, if you have massive databases that contain hard-won proprietary info (say customer or financial data), the CIO is responsible for protecting it and using it to the business’s full advantage.

If you’re working on a data mining project, chances are that came from the CIO. Most companies don’t have a problem with collecting data—they can collect data at a prodigious rate. The problem is making sense of it. This sometimes goes by the name of business intelligence, and if you’re good at statistics, you could become the CIO’s hero.

Chief Operations Officer (COO)

Operations is all about getting stuff done. It’s one thing to have great ideas or great data; it’s another thing entirely to keep a whole company running smoothly. The COO is responsible for the day-to-day operations of pretty much everything. A good COO can take a lot of burden off the other executives, freeing the CEO to focus on business strategy and CTO to focus on product strategy. Without a COO, they spend a lot of time just trying to figure out what the heck is going on across the company.

Chief Financial Officer (CFO)

This is the executive who knows everything about the company’s money, both where things are at now (the accounting side) and how they’re going to fund projects that are underway (the finance side).

Chief Legal Officer (or General Counsel)

All the companies I’ve worked at have had a general counsel instead of a CLO. Same thing: this is the head lawyer. Most any business arrangement that needs “the i’s dotted and the t’s crossed“ will cross the general counsel’s desk.

You may interact with the general counsel to go over software licenses. These days, it’s increasingly common to integrate open source software when building a technology product, and the sharp GC will ask about the licenses for each component. It makes everybody’s life easier if someone on the team tracks these (for example on a wiki page) for easy reference when the lawyers come calling. If you’re the one who has been tracking licenses, you’re the one who will sit down with the GC (and probably CTO) to go over them before the product ships. It’s an easy opportunity to get executive-level visibility.

Chief [x] Officer

There are lots of other officers who could exist at your company: security, compliance, dog washing, and so on. For these specialist roles you’ll need to ask your manager what they do.

Board of Directors

Not all companies will have a board of directors. Mom-and-pop shops won’t have one. When investors start to pile money into a company, however, they demand some level of oversight, and this is where the board comes into play. In publicly held companies, the board is elected by the shareholders.

The board isn’t involved with day-to-day decisions; in fact, they generally meet only once a quarter. The board meeting is where the executives (company officers) present how the business did last quarter and what they’re planning for next quarter.

Since the board of directors is there to represent the shareholders, most board members don’t work for the company. They could come from investment firms (that is, strictly money guys), or they could be executives at companies in related businesses (that is, domain experts). The latter, especially, are there to provide advice to the executives and also call B.S. if the company is doing something stupid.

If there’s one thing the CEO is scared of, it’s the board of directors. If they don’t think the CEO is leading the company well—in other words, protecting the investments and interests of the shareholders—they will bring in someone new.

Actions

Throughout this tour of the company we’ve encountered a lot of people to talk to. Your assignment, should you choose to accept it, is to go start some conversations with people outside of engineering. Start close to home, with test and support. Then branch out, for example with the product manager for the product you work on. Before long you’ll get introduced to plenty of others and discover the rest of the org chart organically.

Along the way, keep in mind Tip 22, Connect the Dots . Notice how these connections spider throughout the company—and you’ll discover why the administrative assistants hold so much power.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.216.27.251