Category Archives: management

On growing up

Excerpts/paraphrasing from the book “What Got You Here Won’t Get You There: How Successful People Become Even More Successful” by Marshall Goldsmith and Mark Reiter.

When we do what we have to do, we are compliant.
When we do have we want to do, we are committed.

Flaws that prevent us from “growing up”.

  • Not listening
  • Failing to express gratitude
  • Refusing to express regret
  • Clinging to the past
  • Playing favorites
  • Making excuses
  • Claiming credit that we don’t deserve
  • Failing to give proper recognition
  • Negativity
  • Witholding information
  • Speaking when angry
  • Telling the world how smart you are
  • Making destructive comments
  • Passing judgement
  • Adding “too much” value
  • Winning “too much”
  • Punishing the messenger
  • Passing the buck
  • An “excessive” need to be me

Harmful Corporate Culture

Things that harm a team or a company can include the following.

Harmful Corporate Culture

Harmful Corporate Culture

SRE Characteristics

An SRE team deals with various domains of influence.  I am outlining some of the ones that I find to be the most prelevant, in no particular order.

SRE Team

SRE Team

Sometimes an SRE organization may be known as the ‘no’ organization. This is really unfortunate. I would like to say that an SRE team is a ‘yes, if…’ organization. What I mean by that is, yes, you can push to production, if you have not exceeded your error budget.

SRE teams deal with a large cross section of infrastructure, such as analytics, notifications, validation, logging, monitoring, provisioning, storage and compute. Across all these functions, SRE’s have to be mindful of reliability, availability, scalability, automation, isolation, capacity planning and cost.

 

Prima Donna

Working in technology, I have had to deal with my fair share of prima donna engineers. A few characteristic that such engineers share include high technical skill set, low social skills, egotistical, argumentative, arrogant, stubborn, impatent, and overall difficult to work with. Some companies tolerate prima donna engineers because they are willing to overlook the other negative aspects due to their technical contributions.  I outline some ways of dealing with prima donna’s here.

Prima Donna

One technique is to try to overlook the negative aspects of the prima donna engineer, focus on the value he/she is providing. Another technique is to give the engineer a project that does not require much interaction with others. Alternatively, you can try to find projects where their impact is significant enough their negativity stays at a minimum. Give honest feedback to them, and let them know how their behavior impacts other team members.  Lastly, if none of this work, then let them know that their negativity will not be tolerated and they will have to find another place to work.

I had a manager once who would say his hiring strategy is ‘no a**holes’. He was of the opinion that just like a fruit bearing tree which bows down because of the weight of it’s fruit that others may enjoy, a knowledgeable person will be humble to benefit others.

Prima donna’s will require a lot of supervision and monitoring from you as a manager to avoid a negative impact on the team, before you hire them ask yourself if they are worth the trouble.

 

 

Qualities of a good manager

I had written a brief blog about the qualities of a good manager that can be viewed here. I am including a picture here to illustrate the point.

Qualities of a good manager

Qualities of a good manager

A picture is worth a thousand words

When building a new team, a number of factors have to be taken into account. These can be summarized in a visual called a ‘team canvas’ , as seen below.

Team Canvas

Why was the team formed? Define the purpose of the team in the center. List some of the values you want this team to have. Next, define the people and the roles that will make up this team. Follow that with some common goals that the team comes up with.

Ask the team to write their strenghts and areas of improvements. The team will need some tools to get their job done, list those under ‘needs and expectations’. Set some boundaries with rules and activities. For personal growth figure out what each team members wants to accomplish and list those in ‘personal goals’ section.

Creating a team canvas will help create structure for the team. It will give others an overview of the team, and it will also help in keeping the team headed in the right direction.

How to hire talent

Introduction

Have been on both sides of a site reliability engineer interview, I have come to realize that interviewing is as much art as it is science. Although there are companies which have tried to make interviewing a numbers game, and to abstract out the human element, interviewing continues to be an imperfect process. Almost anything can go wrong in an interview, from both sides. From a companies perspective, you should not consider a candidate confirmed until he/she shows up for work on the first day. In this article, I list a general format that if adhered to, may prove to be useful for interviewing of software engineers, or site reliability engineers.

Format of Interview

Once a candidate has been identified for a role, or has been “sourced” through different means such as LinkedIn, referrals, or otherwise, a recruiter should try to arrange to arrange a phone conversation with the candidate. Once a phone conversation has been arranged, start with the below steps.

– Over the phone, recruiter asks some basic technical questions, passing of which is mandatory. The recruiter also judges if the candidate is a good fit for the position based on experience and job description. In terms of what kind of technical questions a recruiter should ask, they should be limited to less than half a dozen, and should be straight forward, that do not require any technical expertise on the recruiter’s behalf. A few examples for a SRE (site reliability engineer) position can be “Which command do you use to view network traffic on a Linux host?”, “Describe the process of opening a TCP port on a Linux host”, “What is the difference between a hard link and a soft link on a filesystem?”.

– There may be a 45 minute or so technical phone interview with an engineer if a candidate passes the initial phone screen with the recruiter. In this technical phone interview, ask additional questions on various topics, such as networking, filesystems, Linux internals, processes, etc, to get a better idea of the candidates strenghts.
After a successfull technical phone interview, next step should be to schedule an onsite interview.

– Onsite interview is generally held by 4 or 5 engineers, and may be broken up in the following format:
* Unix/Linux system internals
* General troubleshooting questions
* Scripting/programming
* Project management
* Scalable architecture

You should try to avoid having different folks ask the same question. You can also split the 5 interviews into a couple of days if you like. Try to avoid non-technical questions, you can guage other aspects of the person

What to look for in a candidate

From a companies perspective, below are some qualities you should look for in a candidate:
– Smart
– Able to get things done
– Self-directed
– Diverse
– Takes Initiative
– Solves Problems on their own

The question you should be asking yourself is “Is this an awesome person who I want to work with?”. The idea is to hire across the board with consistent standards. Your job is not to break the candidate, it is to try to figure out what he/she does best and where they are lacking in strength.

During the Interview

Before the interview starts, try to make the candidate comfortable. This may sound obvious, but it is not. I remember being in 5 hour interviews without a single break, feeling tired and thirsty and unable to concentrate. Give the candidate frequent breaks for hydration if needed. You want the candidate to bring out the best in a candidate, to do this:
– Come with some hints
– Give candidates with opportunities to success
– Your job is not to hand a test
– Don’t get stuck on a problem
– Make an interview enjoyable
– Don’t make a candidate feel misreable
– If they do not feel good, they won’t be a good referral
– Try to limit general questions, such as definitions, which can be easy to memorize and do not give an idea of depth of a topic.

Good interview questions

– Start with easy questions, work you way to harder problems
– Don’t look for specific answers, as a question may have different valid answers
– Ask 2 or 3 questions
– One question is ok if it has multiple areas to dive into

Comparatively, not so good interview feedback is:
– Is generally incomplete
– Don’t include pictures of the candidate

What not to ask

Don’t ask about:
– Religion
– Age
– Disability
– Genetic info
– National origin
– Pregnancy
– Race and color
– Gender

Asking questions about the above can result in legal complications. If candidate does not get hired, he may turn around and sue your company if you asking him/her about the above questions. He/she may claim that they did not get hired because they belong to a particular race or religion.

Limit questions on:
– Textbook knowledge questions
– Culture questions
– Communications questions

You can pick up on culture fit and communication questions based on the technical questions you ask.

Providing interview feedback

Good Interview Feedback is factual. It should in the least:
– Lists your questions
– Lists the answers as given by the candidate
– Additionally, feedback should include analysis of the interviewer.
– Transcibe code
– Include a high level summary
– Evaluate culture fit
– Role level knowledge
– General cognitive ability

About recordings:
– Avoid audio, video recording

How do you conduct your interviews?