• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Dion Almaer

Software, Development, Products

  • @dalmaer
  • LinkedIn
  • Medium
  • RSS
  • Show Search
Hide Search

Management

From Go to the Number Slide Puzzle

May 2, 2017 Leave a Comment


I have managed teams in various stages of growth.

At times there is hyper growth, where a dump track pulls up to you with money and head count and you are charged with running like the wind to grow the team to capture an opportunity.

At others you have stagnant growth (or even worse: negative), where you need to take a breath and tackle a problem with the crew that you have. Sometimes this happens in dire situations, but that isn’t always the case. It often happens after an influx of talent where you realize that you all just need a breath. It takes time to ingest new members and maintain the evolving culture. It can all sounds great and easy to have a large influx, but it is far from it. When you are adding team members like this, it is a lil like playing Go. Ideally you have a strategy and some time in between each move. If you were playing speed Go where you had to lay down the peaces one after the other a couple mistakes can compound and you end up with a bad Tetris game:

"What is technical debt?" Technical debt is hard to explain, but a picture is worth a thousand words. #programming #softwaredevelopment pic.twitter.com/AG2L3VDuKZ

— Jedd Ahyoung (@Jedd_Ahyoung) January 31, 2017

My ideal growth state is being able to play it slower with organic growth. This gives you time to play the board and let it settle. Every new player that you add to the game changes the entire team and you need that time. If you get the right flow state you are able to keep a strong culture and give the appropriate time to new recruits to get up to speed. A friend joined a unicorn and left a few months over to come to Google citing the fact that he was on a new team with an awful codebase and everyone was new at the company.

At times you get a large infestation of talent through an acquisition. This comes with great opportunity, a proven team that works well together. It also comes with potential culture clashes and expectations that need to be shaped. When done right the combined force is obviously more than the sum of the parts and you end up with a win win, but we all know that pulling off acquisitions is hard work on everyones behalf.

Back to stagnant growth. At this point you are waiting at the Go board for so long that you need to play the age old number slide puzzle. Moving around parts as changes happen to maximize the health of the entire team. Even when you know where you want to get too, getting there can be really hard. Unlike the numbers in the slider, humans have minds, feelings, and careers to concern themselves with. You can’t just move them around and expect everyone to be happy to go with all the moves. Instead, you need to paint the vision of how the world will be when it lines up that way and be really careful that you don’t mess anything up for people along the way. You have to go slower than you would sometimes like. You need to nudge.

Do you party with your cousin orgs more that your siblings?

November 13, 2015 Leave a Comment


I remember when it hit me. I had back to back meetings with two teams, and they were polar opposite experiences. In the first meeting, you would be hard pressed to know who belonged to which team. Everyone was problem solving and coming together for the customers.

Then we rolled into the next meeting, one that was silted and the air was filled with the pungent smell of CYA. Fingers were pointed, everyone was guarded with what they said, and the ball barely moved an inch. It was awful.

The stark contrast meant that I couldn’t help but compare. What was the root problem that was stopping the teams from working well together in the second example?

It could be many things of course:

  • Personality clashes between the teams
  • No clarity of ownership and purpose
  • Incentives being misaligned.

But it didn’t fit neatly into any of those buckets. Then I stepped up a level from thinking about the individuals and their personalities, and instead looked at the groups. And there it was. One of the groups was a close peer, with both of us reporting to the same immediate boss. The other was more removed, all part of the same family, but further up the tree.

This got me thinking about families.

I have witnessed interesting behavior where siblings can go at each other like cats and dogs, but when cousins are around everyone has a blast. With cousins there aren’t the same concerns with pecking order in the family, and instead you are left with super-friends… in that they are family, they will be around your whole life, and that you get the overall crazy of your particular family group. It also doesn’t hurt that generally when you gather with cousins it is to celebrate and chances are you end up with presents. You don’t have to live with them and all their warts, as you do with your siblings.

There are many occasions where I have witnessed someone react to behavior from someone else and I know that they would have reacted totally differently if the other party was someone else. It hasn’t been uncommon for me to say to someone “what would you have done if I had said that to you?” Once a bit is flipped, we often look for things to prove why we flipped that bit and we get frustrated, whereas with someone we like we are willing to deal with more and give them the benefit of the doubt.

All of these people, and family, dynamics can be seen in the corporate world. As you try to build a healthy company you need to watch over these dynamics and step in when appropriate. This doesn’t mean that every relationship should be happy happy joy joy. Not only is that not realistic, but it isn’t even ideal. It is good for us to push each other. It is good for us to have friction. The key isn’t to freak out at that, but rather find ways to process the friction. You don’t have to be best friends with every person or org out there, but you do need to work well together. That often comes down to trust.

The Poison

There are situations where I didn’t trust other orgs, and that was always a poisonous situation. This is where “politics” come out and you try to protect your team. In the short term this can keep the team moving and productive, but in the long run it is destined to break down as the natural structures don’t make any sense.

As someone responsible for some part of an organization, your job is to build trust over time throughout your organization. This includes working with your peers. Andy Grove calls this out explicitly when he defines the output of management as:

“A manager’s output is not her individual work, but instead the output of her organization plus that of the neighboring organizations under her influence”

This responsibility is important. We are all ultimately one family, and there is plenty to go around, so don’t be insular, but help with empathy.

With this in mind, I will try to treat everyone like a cousin, even at the org level 🙂

“My engineers want to code at night! Oh no!” Oh yes!

September 4, 2015 Leave a Comment

Coding at night

I was talking to someone who was concerned about one of the engineers on his team. This chap was writing a lot of code on the side for a hobby project, and it didn’t feel right to this manager. After listening in to the group for awhile I had to insert myself and ask some questions:

Is he performing his job to a satisfactory level?

In the information age it is hard to measure impact based on the number of hours. At some point the engineering manager has to set the expectations for the engineers job performance. This typically happens already, where it is clear how to meet expectations, exceed them, and more. Putting in the effort to clearly define these levels gives you the tools you need to be much more loosely coupled on items such as time input.

If the engineer is at least meeting the expectations of their role, you shouldn’t be too concerned about what else is going on, but there is always the opportunity to talk about what it means to get to the other levels. At some point the employee may take the trade off to do more in their personal life at the expense of being a role model (not that time is the only way to become a role model).

Measuring the impact that a person has on your business is hard. There are so many complex variables at work, with a myriad of side effects. There is the notion of individual contribution, and also the leverage that you get with the team. A great leader has a huge leverage effect beyond himself, and that is true for any employee.

If he instead spent the same time on a hobby very different to work, how would that make you feel?

The manager didn’t like the engineer writing code on the side, but why? Why does it sometimes make people feel weird if they use the skills they have at work for a hobby, when if they spent the same amount of time on a very different hobby it wouldn’t feel as weird?

If the engineer was cranking away putting hours and hours into becoming a scratch golfer, how would you feel differently?

In some ways you should feel very excited that an engineer on your team loves software so much that he continues to explore it “off hours”. The passion is a great sign that they enjoy their craft beyond a pay check. Understanding the motivations is of course key. The context is what matters here. What are they working on? Is part of the hobby project a way to explore different tech stacks? A different domain? There is a good chance that this “free time” work is a gift. The engineer is growing and you are getting the benefits of that growth, while he is with you.

Is he being paid for work on the side?

It can feel different when someone is hacking on a fun open source side project vs. a paid gig. The incentives are different. On the one hand the golden rule of “as long as they are doing their job” can be applied, but it is still a warning sign. Do they feel they need the money and don’t like what they are doing other than the pay check? Or, is the pay check a happy side effect of working on something genuinely interesting?

When money is changing hands there is another person in the equation: whoever is paying them. If it is consulting work, someone is managing that work. If they are selling an app on an app store, there are customers. When this happens loyalties can be split, so the salient point is “where is the primary focus?” When shit hits the fan and you need this guy, is he around?

In the 24/7 world that we live in, when is it OK to work on this vs. that. Chances are you have had people work for you at all hours of the day. In fact, it may be that some of your engineers work best coding at night, so you should let them do that at times for their day job!

Expectations

As with seemingly so many things in life, it probably all comes down to expectations. You should be able to have an honest transparent ongoing conversion between engineer and manager. You also need to be fair across your work force. You may have some fear that the engineer will leave to work on this hobby, or get another job due to the open source work, but is the alternative of trying to capture someone better?

If you can find a passionate engineer that is creative and wants to explore his craft no matter what, you should probably consider yourself very lucky. If not, what kind of culture are you creating? Whatever you do: don’t just tell them they can’t be creative and put them in a box. If you want obedient fulfillment workers, this is one way to start down that path.

As one of my kids often remarks: “Are you FORCING me?”

Primary Sidebar

Twitter

My Tweets

Recent Posts

  • The holy grail of a Web SDK
  • The rise of the extensible app platforms
  • Active Recall now out of beta and open for all learners!
  • Agency developers are underrated
  • Web Developers are Shopify Developers

Follow

  • LinkedIn
  • Medium
  • RSS
  • Twitter

Tags

3d Touch 2016 Active Recall Adaptive Design Agile Amazon Echo Android Android Development Apple Application Apps Artificial Intelligence Autocorrect blog Bots Brain Calendar Career Advice Cloud Computing Coding Cognitive Bias Commerce Communication Companies Conference Consciousness Cooking Cricket Cross Platform Deadline Delivery Design Desktop Developer Advocacy Developer Experience Developer Platform Developer Productivity Developer Relations Developers Developer Tools Development Distributed Teams Ecosystem Education Energy Engineering Engineering Mangement Entrepreneurship Exercise Family Fitness Founders Future Gender Equality Google Google Developer Google IO Habits Health HR JavaScript Jobs Jquery Kids Stories Kotlin Language Leadership Learning Lottery Machine Learning Management Messaging Metrics Micro Learning Microservices Microsoft Mobile Mobile App Development Mobile Apps Mobile Web Moving On NPM Open Source Organization Organization Design Pair Programming Paren Parenting Path Performance Platform Platform Thinking Politics Product Design Product Development Productivity Product Management Product Metrics Programming Progress Progressive Enhancement Progressive Web App Project Management Psychology Push Notifications pwa QA Rails React Reactive Remix Remote Working Resilience Ruby on Rails Screentime Self Improvement Service Worker Sharing Economy Shipping Shopify Short Story Silicon Valley Slack Software Software Development Spaced Repetition Speaking Startup Steve Jobs Study Teaching Team Building Tech Tech Ecosystems Technical Writing Technology Tools Transportation TV Series Twitter Typescript Uber UI Unknown User Experience User Testing UX vitals Voice Walmart Web Web Components Web Development Web Extensions Web Frameworks Web Performance Web Platform WWDC Yarn

Subscribe via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Archives

  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • November 2021
  • August 2021
  • July 2021
  • February 2021
  • January 2021
  • May 2020
  • April 2020
  • October 2019
  • August 2019
  • July 2019
  • June 2019
  • April 2019
  • March 2019
  • January 2019
  • October 2018
  • August 2018
  • July 2018
  • May 2018
  • February 2018
  • December 2017
  • November 2017
  • September 2017
  • August 2017
  • July 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • February 2014
  • December 2013
  • November 2013
  • October 2013
  • September 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012

The right thing to do, is the right thing to do.

Dion Almaer

Copyright © 2022 · Log in

 

Loading Comments...