What Software Companies Are Looking For

Getting your foot in the Door

By Eugene Eric Kim

Eugene is a DDJ technical editor and can be contacted at eekim@ddj.com.

All the technical skills in the world won't get you hired if you don't know how to open a company's doors. DDJ technical editor Eugene Eric Kim recently spoke with the human resources directors at two very different software companies to get an insider's view of how companies hire and what they look for in candidates.

Bill Pellerin (BP) is the manager of staffing for Compuware's NuMega Division (http://www.numega.com/) in Nashua, New Hampshire. NuMega produces software-development tools such as BoundsChecker and TrueCoverage. Karen Clark (KC) is the director of staff member relations at Red Hat Software (http://www.redhat.com/), a Linux distribution company in Research Triangle Park, North Carolina.

DDJ: What do you look for in a potential new hire?

BP: Two of the major things we look at are that they are technically competent, and that they're bright. Those two don't necessarily equate to a high grade point average. A person needs to have a passion for technology, a passion for what they're doing, and a drive and enthusiasm. We're looking at the total person, the total package.

Usually along the way, I will ask what their GPA was because that's an excellent indicator of how they're doing academically. But the GPA doesn't take into account the fact that they may be working three jobs to pay for their education. We're going to look at the person as a total person, not just grade point average. I think that the enthusiasm and the drive and the passion is as important as the grade point average because they've got to want to be doing this.

Table 1: 1998 medial salaries by region and the U.S. national salary averages for software engineers

KC: I would agree with Bill. We also look for the total person when we are looking at candidates. We look for people who are broad thinkers. When we look for people who are right out of school, we look for individuals that have different things in their school career. For example, if they have a senior project that they worked on and they also did a summer internship, that they weren't necessarily the same type of projects, that they're well rounded. We do look at GPAs as well. We think that GPAs are important, but we don't place a huge emphasis on them. If they are intelligent, if they are bright, if they know what they're talking about, and their GPA wasn't as great as we would have hoped, then we'll overlook that.

NuMega's Bill Pellerin and Red Hat's Karen Clark.

DDJ: Does it hurt candidates if they don't have a lot of experience but they do have good grades?

KC: No, I would say that on our end it doesn't necessarily hurt them. If they're bright, if they're intelligent, if they have drive, enthusiasm, and a great attitude, then that's going to help them a lot, even if they're lacking in experience.

DDJ: How do you determine whether a student is bright and has drive and enthusiasm?

KC: We ask a lot of open-ended, multipart questions, situational leadership questions where we can find out how the student looks at different issues, how they look at work, what they think a good working relationship would be, how they think about working on teams. That gives us a better idea of their drive, and their initiative. Everybody says, "I'm the best. I have great drive and my initiative is wonderful." But when you ask these types of questions, sometimes you can get the real picture, and they don't even realize they've told you what they actually think.

BP: Yes, as you're talking with someone, you can tell whether they know what they've done or not. That doesn't mean that they've done it in the class work, but that they can articulate it, that they put it together and can articulate it concisely but completely. When they're articulating it, you listen to some of the words they use, the process words. "I did this," or "we did this." There's a balance of the "I"s and the "we"s. With students, you're looking at their projects. If they are group projects, what kind of a role did they take? Were they the leader? What portion of the process did they lead or take and develop?

DDJ: Bill, Compuware has a lot of Windows products and some new Java products. But you also do a lot of low-level systems tools, like debuggers and profilers. What kind of technical experience are you looking for in your developers? Is it important for students to have Windows, Java, or low-level systems programming experience coming out of college?

BP: If we are confining this conversation to brand new college hires, then no, it's not necessary. The new college hire should have had exposure to C++ in college -- at least one course -- and that exposure is often in a Microsoft environment. Other than that, we're really looking for that ability to learn.

DDJ: Red Hat is a unique company in that you're dealing with free software, and that you're not necessarily developing all the tools that you're distributing. For example, the latest Linux kernel is being developed independently from Red Hat, although people at Red Hat may be contributing to it. Karen, what sort of technical skills are you looking for in someone just out of college? Is it important for them to have UNIX experience?

KC: Absolutely. They do need to have UNIX experience; that's very important. There are a lot of people who have no UNIX experience, but they know a lot of Linux. So I would say that they must have Linux experience, and UNIX experience may be a good substitute. We also want them to have scripting experience.

DDJ: How do you mean scripting? Perl scripting?

KC: Yes. It is also important for them to have contributed to the UNIX community during their college career. It doesn't have to be anything that they did full-time, but something to which they contributed on a regular, semiregular basis. That is very important to us as well.

DDJ: Do they have to know C++?

KC: That's a very big plus if they do (no pun intended). It's a good thing for them to know, although we don't absolutely require it for every technical position. C is much more important than C++ for us, so it's important for candidates to have that experience as well.

DDJ: How easy is it for engineers to go from one development project to another within your respective companies? Is it fairly easy to migrate between different projects?

KC: If we have positions that are available, we announce them to all of our staff members first. Since we're growing so rapidly, we have brand new positions opening up constantly. So yes, it is very easy for someone to move around if they wish to do that.

BP: I guess we're also going through a period of rapid growth. As we bring these new students in, we look to bring them into one of three roles. One of them is what we call a programming consultant, a junior developer who works with our customers, who are also developers. They get a chance to work on all kinds of new technologies that our customers are working on. As I said earlier, we are looking for people that want to continue to grow and expand. So we greatly encourage them to continue to grow and move. We look at someone coming into one of these programming consulting roles, and maybe they'll be there in a year, year and a half at most, before they move on to a new role within the company.

DDJ: Do engineers have the chance to move up the corporate ladder, or do they need to have a sales and marketing background?

BP: We have growth in two directions: One over to the product marketing area, the other straight up into engineering management. Our engineers don't have to leave us to get that growth. We've got a number of opportunities, even within product development, for leadership roles.

DDJ: Karen, is it possible for engineers to move up the corporate ladder at Red Hat?

KC: Yes, it is. You wouldn't necessarily have to have the marketing experience. In fact, the individuals that are leading two of our teams at this this time, to my knowledge, had no marketing experience. They are learning the marketing side of things and the sales side of things now, but they didn't have that initially. So we do let people know that when they do come in, they don't necessarily have to move over into a marketing role to move higher up. However, they can if they would like.

DDJ: A year ago, basically anyone coming out of college with a technical degree did not have to worry about getting a job pretty much anywhere in the U.S. Is the market for new hires as competitive for companies now as it was a year ago?

BP: In my opinion, it is still a very competitive marketplace. If you look at what's going on, there are less and less students going into technical curriculums, which leaves a smaller volume coming out of the spout to fill an ever increasing bucket. Also, we are looking for very specific people, very specific skills, and very specific traits within that same group, which makes the pool even smaller for us. We are working very hard to find people that have the skills and the fit for what we are trying to accomplish.

KC: We are in the unique situation of having a lot of people that come to us looking for positions, even if we don't necessarily have something for them. They want to make sure that we have their résumé in case something becomes available later. Linux is hot right now. We have trouble finding certain people for certain positions, like web master-type positions, but overall, we are not being hit with this competition for talent like some other companies that I have spoken to. Developers and engineers are knocking on the door, which is a great situation to be in.

DDJ: Karen, do you hire mostly in the Research Triangle area, or do you recruit actively outside of North Carolina?

KC: We recruit actively all over the U.S. We find a lot of people in this area because of the Research Triangle Park. There is a lot of talent in this area. So, yes, we do both.

DDJ: Are people not from the Research Triangle area at a disadvantage in terms of getting a job at Red Hat?

KC: No. Even though we have three universities right here, we are looking in California, up in the North. So that does not necessarily put you at a disadvantage if you're not here.

DDJ: Bill, do you have problems finding people in New Hampshire? Do you hire primarily from that Northeast region, or do you look actively outside of that area?

BP: We look actively wherever there are pools of talent. The talent does exist in the southern New Hampshire/Massachusetts area to fill a number of openings. It's just a matter of whether the talent at that moment is looking. So we don't restrict ourselves to just one area of the country, although like any other company, we would hope to be able to fill the majority from local talent. And the talent does exist locally.

DDJ: I know that most companies are reluctant to give out salary numbers, but I'm going to ask both of you anyway: Is there an average starting salary that new hires can expect?

KC: It's hard to put a figure on it because it depends on what group you go into.

DDJ: What is the range?

KC: Another part of my problem is if I say we start them between $35,000 and $45,000, and you print that, I will have some people who will read it and say, "I'm only making $36,000, so I got screwed over." And they're all screaming at me next week.

DDJ: Do you ask applicants what sort of salary expectations they have?

KC: Yes.

DDJ: Do you try and meet those salary expectations?

KC: Not all the time. If they say, "I'm making X amount of money," and that's way out of our range, then I will tell them, "We're not going to be able to meet those requirements. Our range for this particular position is within X to X. But we can offer you these benefits. We can offer this dynamic company that's fun and exciting and is going somewhere. If you could come on now, then I bet in five years you're going to be really glad that you did, and you're going to be a lot further along here than if you join another software company."

DDJ: Do you get into a lot of bidding wars with people? Do people come in and say, "This company offered me X amount of dollars, are you going to match that?"

KC: We don't really have that a whole lot. Usually, I'm really up front with them and say, "This is all we're going to be able to do. If somebody offers you a higher salary, if you would like to call and tell me about it, that's fine, I'll listen. I'll try to sell you on why you should take this position here at Red Hat, but our range is from X to X. You're going to be somewhere in there. That's all we can do for you."

DDJ: How about you, Bill? Can you address the salary question?

BP: I would agree with Karen that our offers are competitive. I don't really want to get into specific dollars because every person is a unique individual. We look at each individual case, each individual opportunity. Everything has an intrinsic value. Once we decide that we're interested in hiring somebody, we put together the best offer that we can right up front. We're not looking to try to negotiate. We want to put a good offer and a good opportunity on the table for the individual. Hopefully, they will realize that we have provided both. We really haven't seen people coming back trying to do bidding wars or see the need to go back and change our offers that often. We really have done a good job of putting the right opportunity, [and] the right offer, before the right person.

DDJ: Do you ask about salary expectations?

BP: Not normally. I've found from experience that if you ask somebody what their expectations are, you've got two choices once they give it to you. You can either whack the person on the side of the head and say they're out of line, or you can be quiet, in which case you almost validate that expectation, and they're disappointed down the road. So I don't look at expectations that often. Every once in a while, there will be a person that I will ask that, but that is more when I am sensing that what we're probably going to offer is going to be in that gray area. More likely, I'm liable to speak up front in the interview process and say, "This is about what I feel we can pay for this position." I try to be up front, and let them make the decision as to whether or not they want to interview.

DDJ: Do you pay people more for having higher educational degrees?

BP: There's an intrinsic value in having the higher education degrees, but I think, again, what the person can do for us skill-wise is much more important. We have people here who don't have degrees. They're not any less [valuable] to us than those who have Ph.Ds.

KC: I completely agree with Bill on that. We also look at what the degree is in. If it's completely nonrelated to what we're doing, then it's not going to help them at all. Generally, if they do have a higher degree, they probably will get a little more in terms of salary, but it's not a given.

DDJ: How important is it for the degree to be in computer science?

KC: It's important, but it's not something that we live and die by. So if the person has the technical ability, if they have been contributing to the Linux community for a period of time and they know what they're talking about and are articulate about the things that we are doing, and they can discuss those with us, and they don't necessarily have a technical degree, then that's okay. However, a technical degree is always a plus.

BP: If we're talking the brand new graduating student, a computer-science degree is not necessarily a driving factor. I think the successful completion of a degree shows the right attitude. Computer science just says they've taken enough courses in one area. There are people who may have taken a number of courses on their own. So I don't really see that a computer-science degree drives it one direction or another. At Compuware, there are an awful lot of people with noncomputer-science degrees.

DDJ: Do the two of you have any final advice for people looking for a job right now?

BP: I think one of the things that I run into with new hires is that they really need to stop and look at the opportunity and not the title. Often we have some fantastic opportunities like the programming consultant field, which is a good entry-level field if you're just coming out of college, but it doesn't have all the glamour of a developer title. These people are working with some of the best developers in the United States, working with them with our product. And not only one of our products, but they're learning multiple products, they're learning multiple protocols and multiple current technology. Yet they'll turn off on it because it doesn't have the word "developer." Once they stop and look at exactly what we're doing there in that job, then they get excited. I'd say, look at the opportunity and not the title. Then, have a passion for what you want to do. Passion will come across in the interview process.

KC: My advice is very basic. It's always important for someone to make a very good first impression. The first impression that I get from someone is their résumé and their cover letter. It's amazing that people, even ones who have graduated from college or who have years and years of experience, don't look at the way their résumé reads. It's very difficult to try to look at a poor résumé and determine what they've done and the experience that they've had. I think that that's something that people need to keep in mind when they are looking for a job, whether or not they're just out of school or whether they have years and years of experience; that they have a nice cover letter, that every word is spelled correctly, that their résumé is easy to read, and that they have a good synopsis of what they've done, what their experience is. That would be my biggest piece of advice because people don't do that a whole lot. It's difficult. They might have the greatest experience in the world, then they have a lousy résumé. They're not even going to get in the door.

DDJ


Copyright © 1999, Dr. Dobb's Journal