Are You Being Wooed?

An interesting and short article went over the predictable labor shortage caused by the difference between the sizes of the Baby Boomer and Gen X population groups. It talked about Employment Branding.

The technical term is “Employment Branding,” and it’s how companies woo top talent. They showcase their company culture, values, benefits, perks, executive team, staff members, business mission, and anything else that will make a great candidate want to work for them instead of their competitor.

… Google, Zappos, Amazon, and Facebook aren’t the only hot employers on our planet. They’re just the ones that embraced Employment Branding when others didn’t. But soon, we’ll be seeing companies of all shapes and sizes strutting their stuff in hopes of catching our eyes. It’s going to be a great year!

Has this been true for you? I know I talk up our unique workplace — especially for top candidates. How prominently has “Employment Branding” featured in your recent job interviews?

Merge Pull Requests Like a Legendary Project Maintainer

If you haven’t written code on GitHub then stop what you’re doing and make something out there. (You really should have a portfolio on GitHub.)

When you’re working all by your lonesome it doesn’t come up much, but add another person to the mix and pull requests can get stressful and laggy real fast. If you’re ready to upgrade your workflow then read about the better way to merge pull requests.

If you don’t learn how to use the hub command line tool then you’ll often find yourself having to decide how bad the request has to be before you’ll throw it back for polish.

Git OCD types will be particularly gratified now they can easily tweak pull requests before merging them. Now you can fix little problems here and there while still giving proper props.

Thanks to Jamis Charles for posting this link.

Embrace The Right Stress

An excellent article in a recent Wall Street Journal lays out a better way to deal with performance anxiety. Though most of us (91%) think of calming down as the proper response to stage jitters the proven better alternative is to welcome the anxiety as a performance enhancer.

In other words, it’s better to tell yourself, “I am excited,” than to give the aspirational lie, “I am calm.”

Not only does your audience rate you better, and your performance on objective criteria rises, but you will find the event less taxing.

According to the article this simple trick of stress-mindset may even be effective at avoiding burnout.

The article doesn’t mention this, but it seems wise to see that there is a difference between the stress that accompanies a moment of high-performance, and the chronic stress of worry.

I’m sure you should still find times in the day and week to unplug and seek a lower level of energy. But in the moment when performance is necessary it is clearly better to be truthful about your emotions, accept them, and have faith that they will elevate your performance.

Hug Your Kids and Smell Their Hair

This article on Burnout comes thanks to Grant Skousen (@gskousen) who sent it to me in reply to the article I linked to on Tuesday.

I’m pretty sure I was burning out some-time in 2013.  A lot of what the article says resonates with me.  The top two are

1 – “Make time for numero uno”

It’s kinda silly so I don’t like to tell a lot of people, but I often listen to fiction on my commute. Especially Epic Fantasy like The Wheel of Time or Words of Radiance.

I blush to add that I’m now branching into vampire novels. It’s not great writing, but that’s not the point: SOMETIMES MY BRAIN NEEDS A TWINKIE.

When I was a developer I always listened to 2 to 4 technical and management podcasts on my commute every day. (Thank goodness for 3x playback.) It made me feel so productive. I loved what I was learning.

The bloom started to wilt a few months after becoming a manager. I would get this rising level of anxiety that said, “These ideas are awesome! I have to do them all RIGHT NOW!

Since I’ve added fiction to my rotation I’ve found I get to work energized and come home ready to adore my kids.

I still listen to business and technical books and podcasts from time to time, but I keep a close watch on how they affect my state of mind.  Maybe it sounds silly, but it works for me.

2 – “Have a process”

This was something I didn’t need as much as a developer, but is CRITICAL as a manager.

I thought life was bad as a dev. In management it got worse.

I have way more “bosses” now than I ever had as a dev. I have far more conflicting “number one priorities.”

Having a process for ingesting, digesting, and executing on input has become more and more crucial for me.

A Bow Always Strung Loses Its Spring

It’s great to be driven. But if you aren’t careful you’ll loose it all.

Practice mindfulness. Smell those roses. If you have kids then smell their hair when you hug them (my favorite smell in the world).

You’ve got to respect all those clichés or they will gang up and get you, eventually.

Spot a Poorly Fitting Job

I recommend this quick read: 5 Signs it’s Time to Quit Your Job

Not a bad list. The quick version is to worry over

  1. a no-win environment
  2. no desire to think about work
  3. feeling unsafe to express yourself
  4. frequent Sunday night blues
  5. no more laughing at work

As Sallie Krawcheck mentions, your signs could be different. 

As a manager, you might want to keep these warning signs in mind when running one-on-ones with your employees.  You could ask questions to try and uncover burn-out or dissatisfaction early. For example, you might ask

  1. What is standing in the way of greater success for you?
  2. What are you passionate about? Does your passion find a voice at work?
  3. Do you feel safe taking risks and speaking out at work? We may not always agree, but I always want dialog to be open.
  4. What parts of your job do you look forward to?
  5. When was the last time work was particularly fun or rewarding for you?

As a manager, I hope I can talk about these things with my directs.

No worries. Just talk.  I want my directs to be happy. Life’s too short to hate your job.

Shrink Annual Performance Reviews

Adobe has abolished annual performance reviews in favor of more frequent, lighter-weight check-ins.  My company has annual reviews but since I became a manager it has been my goal to make those reviews a non-event. That is, I try to have weekly check-ins (one-on-ones) that bite off performance review a week at a time.  Read the article for Adobe’s take.

My own challenges:

  • It can be easy to be too zoomed in during weekly check-ups. So I’ve been adding monthly and quarterly triggers for higher level discussions.
  • In an agile development environment it can be hard to set long range goals.  Each developer is more or less committed to doing whatever comes next off of the backlog. Creating metrics that give concrete feedback while valuing all the important work being done is an enormous challenge. I’ve found that when you do hit on a good metric people are relieved to see the evidence of their good work being recognized.

Thank you to this week’s Mad Sad Glad from Manager Tools for the link.

You may not be able to abolish performance reviews, but if you’re a manager you can shrink them.

My Current Favorite Interview Problem Memoize

Just added memoize to my growing catalog of interview questions.

Summary of the Challenge

Part 1 is a discussion. Part 2 gets to the code. You can skip straight to 2 when time is short. This problem is particularly useful for gauging JavaScript familiarity since it takes advantage of functions as objects and closures.

There’s a lot of jargon in the question, but that’s not the point of this challenge. Make sure they understand the question. You might gauge how willing they are to ask questions, but only gently. Don’t put them on the defensive just by the wording of the question.

Part 1: You have a number of expensive pure functions. During the course of any given hour these functions are each called with a small number of inputs. Hour over hour the inputs vary dramatically. Describe how you could improve the performance of the system.

Candidate behaviors to look for: Caches the results and bypasses the expensive function calls when the answer is cached. Memoization. (See formal write up for details.)

Part 2: Write a higher order function (a function that takes a function and returns a function) that accepts a function of arity 1 and returns an identical, memoized function. (See formal write up for candidate template and example solution.)

Good At Differentiating Candidates

You will find that some candidates will solve the problem handily, refactor, then easily run through the examples. Other candidates might have to be coached more through the implementation, but should at least be able to step through the execution of the examples.

Next page