Lessons on Hiring and Networking

Lessons on Hiring and Networking

I have been working as a software developer for over a decade to the point in my career where I know hundreds of people that are in my same line of work and can thus give (and receive) meaningful help for people in their career as they try to find full-time or contract jobs. In addition, many of my peers are in the position to hire people at the companies they work for (or in some cases at their companies).

Reaching this point has made me reflect on how I should have been networking with people that I’ve come across all along; how we should all treat each other.

Here comes some bulleted unsolicited advice about hiring. Everyone you work with, please remember the following:

Accept and Expect Growth

The ecosystem in which you operate matters. A great deal. People can be ineffective in one role or company but succeed at another. Don’t judge people based on one job (or even worse one project) at one place. In addition, people change over time – not just technical skills but soft skills as well. Claiming that somebody you worked with four years ago “isn’t good with customers” isn’t valid unless you saw them hit one yesterday with an umbrella (for no reason). If you don’t pay attention to the fact that people grow, then you will discount people that grow a lot, and these are the people you most want to hire.

Don’t Assume Local Reputation is Accurate

At times, you’ll see someone, and this applies more with those in manager roles, that does something that you don’t understand – they fire someone, they stop a project, they are on board with a change that seems destructive, etc. When you are a manager you know more information about what is going on across the company; some of these priorities and realities are quite different from what the average worker sees. Remember that you might not have all the information. Saying that a manager was a jerk because they fired Bill four years ago might not be valid. Bill might have hit people with umbrellas (or hit on people). Find out for yourself if possible, and don’t make a judgement if you can’t find out.

Gossip is (most of the time) about the person communicating it, and not the person being communicated about. Said another way, don’t let other people’s impressions of someone affect your judgement of them – see for yourself how good they are.

Don’t be a Jerk

If you have trouble not being a jerk in general then try this thought exercise: Imagine that every single person you work with will be in a position later to hire or not hire you at your dream job. Try to be professional, polite, and helpful.

Specific Case: Workers that are Different than you

There are two instances of being a jerk I’d like to call out: being a jerk to older workers and being a jerk to women. Unfortunately for our industry, which is full of WDWG (white dudes with glasses), these both fall under “people different than you” for most hiring managers.

Our industry thrives on the language of the now. We talk shop in very specific ways and isolate and eliminate those that don’t seem up to speed with what can help us in our current project. Older experienced developers (whether they have stayed technical or moved into management) use slightly different terms for the same thoughts: they might refer to server-side code as running on mainframes or call what we call ‘pages’ in a web context ‘screens’. They might mention things to avoid more often than younger workers and thus come off as negative. Do not let these slight differences make you not listen to them; they are full of good information.

Our industry seems like it innovates all the time, but the core problems – the really hard ones -remain and have been fought for years. How do you figure out what system to build? How do you write it down so that others can understand? How do you build and test software on large teams so that everything works together? How can you make maintaining the software as easy as possible after everyone leaves? These aren’t new problems and they are the sort of problems with which older workers have decades of experience.

There aren’t a large number of women that are software developers and many men in our industry really don’t know what to do when they come into contact with them at work. Male developers, even those that try hard not to be sexist, tend to assume that women are either less effective or are super-geniuses since they have had to face “hardship” being in the minority. Try to do neither and focus on merit; see for yourself.

Keep in mind one knee-jerk reaction that I’ve seen many males have (and have had myself) – to assume that someone who is better at all the soft skills that surround development { requirements, testing, documentation, team activities } is, therefore, less effective technically. There has been extensive research that women on technical teams are as effective and help build teams by increasing communication while at the same being just as effective on the coding side – do not discount their power.  Just because someone shows up on your team and can speak in complete sentences doesn’t mean that she can’t write code.

Be Aware of Why You Like Working With Someone

As you work with someone see how much you

a) like working with them
b) what their quality of work is like

You can be friends with someone and they can also be good at their job, but be aware that a) affects your judgement of b). Try not to let the short-term employment situation affect your judgement of longer-term skills like attitude and morality.

Handle Recommendations Carefully

This last point leads to the most common failure of the recommendation system by which many developers are found.  Everyone you enjoy working with is in a grey area between you just liking working with them and them being able to get a lot done and therefore not cause you stress.

When recommending someone communicate where this person is on your friend-trust scale. Recommending your cousin because he has good jokes at family reunions and works in your field is very different than recommending someone that you don’t like but respect for how effective he is. I’m not saying you shouldn’t try to help out people close to you socially, I’m just saying that to the employer these are very different situations and that you should be honest about which one is happening.

Practice Networking in its Pure Form

As much as possible try to share what you know with people that ask for help and are trying. Networking is not about doing favors with the expectation of getting one later. If you know something, share it. If you want to know something, ask for help. Networking isn’t about getting jobs; it is about having a crew of pleasant competent people that are on a logical greater team (outside of individual positions) with you throughout your career helping each other become better.

Make a List

Maintain a list of people that are a joy to work with. Maintain a list of people that you would hire to do a job in which all of your personal life savings is invested. For the love of all things keep in constant contact with anyone that is on both lists.