Professional Documents
Culture Documents
The Cto Field Guide - 10012022
The Cto Field Guide - 10012022
FIELD
GUIDE
GLEICON MORAES
© Gleicon Moraes
Gleicon Moraes
gleicon@gmail.com
https://the.cto eldguide.com
fi
TABLE OF CONTENTS
Foreword 7
Starting is hard 9
Know your team 18
Decisions 28
TL;DR 40
The plan 42
Challenges 55
Delivery 64
Closing advices 73
Interview Templates 79
DATA TEAMS 85
INFOSEC TEAMS 89
CAREER LADDER 92
FOREWORD
My proposition is bold but simple - to provide a eld guide for
tech leaders.
A eld guide was the kind of book that fascinated me when I
was a child - electronics eld guide for radio and television
repair were the kind of technical books and magazines a
weird kid could get in Brazil
I had a small collection - a tube eld guide, couple of
electronic magazines, one of them about TTL Chips and so
on. The recipes, part numbers, substitutions and example
schematics draw me to keep reading it, even not having a
single part around to play.
I also took interest on ham radio and later on audio circuits.
All of them properly furnished with whatever technical book
or guideline I could get my hands at.
Things changed a lot when I rst saw a computer in a friend’s
house - ZX81 clone called Ringo. And right after that a MSX
(z80 80s computer). I got interested on seeing the parts
inside but soon their eld guides took me to programming.
And there I am and still learning.
When I started to move to the management path, I set to
write about my experience (another childhood habit -
doodling and keeping a journal). I accumulated many pages
of my day to day, feedbacks, experiences, projects and later
on when I was invited to help startups to gure out team
growth, what I discussed with them, books, things we did
together and so on.
There were some patterns when I was mentoring - a CEO
looking to improve their relationship with a CTO, a senior
programmer pushed into CTO or head of engineering, a head
of engineering su ering the pains of quick growth and so on.
Counting with what was happening in my day jobs I was able
to learn a lot contributing and gather a lot of notes.
I started to publish that on my blog, then as the volume of
consulting and mentoring grew, to refer to that to fast track
fi
ff
fi
fi
fi
fi
fi
fi
ff
fi
fi
1.
STARTING IS HARD
T
his ebook was created from a blog post with a big
title. To be honest, from many posts that I've written
through the last years.
I usually write pieces here and there, send to friends
and let them get old before revisiting and making them
available. After a couple of these posts it seemed to me I was
going around the same subject: management and leadership.
Things that happened to me and that I wanted to keep it
somewhere in case I needed to remember.
fi
ff
In general it means someone is ful lling a tech leadership
role and sharing accountability for team, delivery or data. You
will also nd responsibilities closer to infrastructure or
security.
This is what I call the timing - the timing I will talk about in this
ebook is joining a new company or getting promoted. The
situations I want to talk about is how and where to start.
WHY ME ?
I've had the luck of having great mentors and managers,
and not so good managers that provided me plenty of
opportunities or examples of what not to do.
fi
fi
fi
fi
Besides regular work, I've been helping startup CTOs and
other tech leads as a mentor for some years, mostly learning
with them and helping where I can. I took notes. A lot of them.
I also keep diaries about my own professional experiences
that I review from time to time.
The problems are not so di erent but the people are. And the
space they have to attack these issues too. When leadership
is needed, having a minimally structured plan goes a long
way.
HOW TO READ IT
Conceptually this ebook is divided in two parts. One is
personal, for you, to consider your career and look at
situations that you may get caught personally while
developing or adapting your style. It goes from this
Introduction to TL;DR.
ff
fi
From there on, we discuss how to start, where to look for and
what to measure.
ENGINEERING VS MANAGEMENT
I can't say that management was a planned path to me. After
some time as an engineer, I thought it would be interesting to
try my hand in management after watching other managers
work.
The tech team were told that managers were people that "are
doing the boring HR work" or "isolating us from business
fi
fi
ff
fi
fi
fi
requests" and that by working hard we could aim to a place
where money and bene ts were the same of managers and
that would be life.
LEADING VS MANAGING
I knew what I did, I knew what I didn't like my managers
did and I had some good role models, so why not ? I knew
the golden rule (Treat others as you want to be treated) so
that should be easy right ?
fl
ff
ff
What did you think when you saw your manager or director
cruising away in a big car in your rst job ? In which order "I
could do that" came to your mind ? It was hard to me to relate
how people got into this position. I've had never questioned
that.
GLUE WORK
Once you get promoted and accumulating seniority, you
notice that even when not managing a lot of your work is
what is called “Glue Work”.
This is work that helps other people to get their work done -
step into a review, organize a reference document, debug,
read logs, assemble a meeting to discuss technical aspects,
push back on stakeholders and early warnings on complex
issues.
There is way more than that but that’s beyond janitorial work
and hard to measure by itself without looking to its impact.
fi
fi
fi
ff
We all remember of the moment when we stepped out of our
attributions to help the team to deliver.
The only advice I had was "be careful to not back into your
comfort zone" meaning I shouldn't not compete with the
team by coding or making their decisions when I faced some
uncomfortable situations where I questioned my choice.
If you are in this situation you will remember fondly the time
when you just coded, but think again - you never did that if
you were leading. We tend to see the past in warm colors.
ff
fi
Over time the people I managed changed, naturally as the
people joining companies changed too. Furthermore my
management style had to adapt, in communication and
expectations.
I had the luck of had worked with the best people around and
see a lot of them becoming managers, tech leads, working
abroad and competing with good advantage to people from
countries that put more emphasis in tech than we did in
Brazil. That makes me proud and my life was easier because
of them.
fi
3.
KNOW YOUR TEAM
K
nowing what your team does makes your life easy.
Looks like a weird thing to say, but answer this: if you
had to start from where someone of your team is
working today, would you know how hard is to do
their job ?
wrong.
Life isn't easy for any new manager, but it is not a bad thing to
let someone that has tech experience to try and manage a
small team, learn and go from there. It also helps shoot down
the myth of the Y career. Leadership is a natural progression
and can be learned.
TEAM CULTURE
The team culture is made from everyone's contribution
and it is hard to see at rst how you in uence it as a leader
and how each of the personalities plays into it.
fi
fl
ff
very important: learn to re. It is tough, but important.
BRILLIANT JERKS
If I had to point an article about engineering culture in a
broader context I say read (and re-read) this interview with
Joe Stump.
fl
That was later rewritten and incorporated in their culture
manual with a similar phrasing and more context, probably to
cope with the reality of a top of the market team.
The cost to teamwork is just too high. There are that person
or situation that is hard to push by. It is not a matter of
position - although they usually breed on senior positions.
collection of individuals.
"Brilliant jerks" by rule are not brilliant and take a lot of time
and energy to manage from everyone, especially their peers.
It is just not worth the time everyone spends and frankly not
worth the production. I am yet to see a productive person
cause positive impact without the minimal people skills.
shipping but everywhere on conferences or activities the
others can not access, it can be perceived as an unfair
exception or perk.
TECH DRAMAS
When small companies and teams start growing, things
like CI/CD, monitoring, automation, processes, programming
language choice and code review/pair programming will
require a decision.
Some of them for due diligence and the rest mainly to put out
the week's drama. You'll always have the tension between
whatever kind of Dev and Ops you implement and at this
stage they come out louder as a scapegoat.
ff
fi
Unhappiness, whining and rumors are normal. As soon as you
acknowledge they exist and to some extent they are normal,
the best. Use your energy to build bridges and channels that
this information can get to you after being ltered by the
good sense of your team mates.
Also a tip here: there are rumors about you. Some of them
will make you want to yell they are wrong. You know you are
not like this. No one deserves to be the subject of unfounded
rumors but a phrase not well connected or decision not
explained can lead to that. Chill. Don’t add to the drama,
address it straight and institute o ce hours, AMA (ask me
anything), 1:1s up to the point where you feel you gave people
enough venues and transparency.
HYPER GROWTH
At one of the startups I’ve worked we grew the
engineering team from 140 to more than 500 engineers.
There are many reasons a startup do that, from real need to
get things done to vanity metrics imposed by comparing itself
to benchmarks.
You will nd a mix of all these situations; the real need for
help, engineering is not delivering, product got into the cycle
of blaming lack of bandwidth - which is interpreted as “we
need more engineers” and so on.
ffi
fi
In an organization con gured to deliver in parallel having
that many big goals among to other complex local goals is a
killer. We will discuss more of that on Chapter 7 - I want to
focus on growing the team.
ff
fi
fi
ff
fi
fi
- Right after doubling the team we had to implement
proper ladder and performance evaluation. The managers
were not used to that, the team was not used to that and it
used a lot of time of people and engineering teams. That
was a re ection of not partnering early with People team
and hiring managers.
- We started to have groups of people ranging from 5
years of tenure to a couple of months, and among them it
started to show some cultural cracks. We had to address it
quickly and ensure that regardless of tenure, all voices
were heard. That had us to change how the manager
would behave and neutralize power plays.
4.
DECISIONS
O
ne of the hardest things to do is to explain decisions.
Specially when the mood is that "anything coming
from outside of the team is a Top Down".
Top downs are sort of a silly ghost haunting teams, which are
hard to chase. They don't exist most of the time - what exists
is an asymmetry of the decisions based on accountability,
priority, urgency, execution power or capabilities.
The contrary movement happens too: tech as commodity —
when all technology you have is from outside vendors. It
comes as "We have the brains, they execute" or "you guys
spent 2 years trying to reinvent the wheel and we're making
an Executive decision of buying Big O software". Same
energy and awareness issue. Where transparency failed ?
Where all nice agile presentations were gone ?
ff
fi
fi
And by the rest of the post looks like Amazon enforcement
was a bit more stronger than a weekly passive/aggressive
reminder.
ff
ff
ff
DISAGREE AND COMMIT
Disagree and commit means more than what is discussed
on modern self-managed teams or management 3.0 material.
Company performance awareness is important during
growth.
The company will look for tools to help unlocking that from a
high executive perspective: institute devices as the ARB
— Architectural Review Board.
A horse designed by committee
and there is a cascading e ect coming from the conversation
this team have out of band. It is more common that
competent people leaves altogether.
fi
A devops clock
company to operate or to buy from you but that’s not an
absolute role.
care of.
ffl
shamelessly stolen from https://twitter.com/chopeh/status/
926074073767206912
5.
TL;DR
D
on't hesitate to migrate to management if you
considered that for at least 1 minute in the recent past.
You can safely try it, you won't lose what you know
and the world needs better leaders. The transition
may looks tough, but doable.
fi
You must constantly (I'd say each 6/12 months or so) evaluate
if it is still worthwhile for you to keep doing what you do in the
place you are working.
B
efore starting a new gig, even if the only time you
have is the weekend before, put a plan together. It
doesn't need to be complex but it has to have a path
to start, which you can go back after a full day and
see progress.
You probably don't need or will check all items in there but it
is a good baseline to learn how you evolved later on. It is
good to look back and see how naive or to the point you
were planning your start.
fi
You can expand it for a due diligence too if you end working
on the merging side of a M&A (Merge and Acquisition). At
some sales processes you will be asked for questions and
records on due diligence and that can help.
fi
fi
taxonomy and baseline. Accelerate | by Nicole Forsgren, Jez
Humble & Gene Kim.
These are the rst four metrics to look for. They are there,
somewhere in your organization.
--Deployment Frequency
Lead time for changes
--
MTTR (Mean Time To Recover)
Change Rate Failure
I've added a metric of empathy to the folks that get the rst
call at your company, the invisible mob of customer
experience and support teams:
- Incidents count per week
fi
that you are doing is everything that should be done.
I've also added some metrics for my friends at the CFO o ce,
under the umbrella of Cloud Economics:
-
line
Monthly/yearly cloud expenses total and per product
-- Licenses costs
Support cost
- Discounts due to enterprise deals and negotiations
Strive to know how much you spend, where are the low
hanging fruit and how to feedback to business and the team
how much they are spending. Engineers love a challenge and
they like to see how well their code is performing.
fl
fl
ff
ff
ffi
fi
one to inform everyone and keep a tag on it.
TEAM METRICS
Here the term "metrics" is loose: look for and quantify how
the team is working now, without prejudice or trying to
change it. Map it well to try to nd why it is like this, and what
is the measure of success of each decision.
ff
fi
fi
stretched managers I mean teams that should be split of
managers accumulating teams.
Who or which group call the shots ? How people know what
to do. Look closely for slack channels that are used as "help"
or "listening" channels with dynamics of people trying to get
attention. Attend as many prioritization and planning ritual as
you can to gather eld experience.
ff
fi
fi
Take a note, you may need to gure out a standard
prioritization process for everyone. A good team is a team
where everyone has a voice.
fi
fi
fi
Look for performance reviews and any document for your
direct reports. No performance cycle process ? That's a
consequence of a good ladder and there are tools to help
automate it. You can do it straight on spreadsheets if needed.
fi
you because you are always on interviews". A lot of problems
in engineering are due to poorly sta ed teams. Work on it. If
you don't know where to start, use the template at Appendix
A
ff
fi
fi
ff
PANDEMIC ADD-ON
We don't know how the world will be as we learn and
adapt to all that happened but remote work was not optional.
We got isolated and highly anxious about all things that we
had for granted in the o ce.
fi
fi
adjustments.
OPERATIONS
I'll use "Operations" as a generic fallback for day to day
stu that I have not covered above or covered only the
metrics. These are questions you ask your peers outside of
your team, your boss and if you have the chance, the person
you are lling in for.
ffi
fl
ff
fi
fi
fl
fi
ff
7.
CHALLENGES
J
oining an existing team is hard, especially if it is during
or after a reorganization. Reorganizations, or reorgs,
are just a tool.
Sometimes they are seen as punitive or meaningless
but they are just a way of trying to tame the uncertainty of
how a team should organize to achieve its objective.
HOW WIL THE TEAM REACT TO A NEW
STRUCTURE OR A NEW MANAGER/
EXECUTIVE ?
One of the weirdest experiences you can have is to be hired
and not have a de ned team or role. This is when an
executive is crying for help, hires a senior executive but
forgets that if he can't deal with what is happening now,
probably a new executive will fail.
fi
fi
fi
fi
WHAT “LEAD BY EXAMPLE” MEANS IN
THE COMPANY’S CONTEXT ?
Leading by example varies in intensity and subject. What
does not work is to hire managers that don't know what the
team does. "I take care of humans and I have someone to
take care of technology" and "I deal with the boring business
and HR stu while you get your ngers dirt coding" are not
smart things to say. Fortunately these managers are going
away and you are stepping in.
Look out for starting small and simple, pair up with engineers.
Set up your workstation and strive to push code out, a bug
x. Fail at that, but try to feel what your team feels when they
are getting things done. Be part of rituals, planning and
discussion. Tie break and top down, deal with the push back
and strike new dialog venues.
pass is managed.
Over time the forums and rituals you created get stronger
and people start looking up for them. Or they die - and you
won’t miss them. Don’t try to shut down on purpose, build
better and interesting ones.
If you feel you are not good enough to answer them, take a
note, put them in a doc, answer later on and publish for
everyone's consumption. Leave no question asked but
repeated, silly and purposefully aggressive.
These are noisy but no noisier than having teams with split
management: sales integration, marketing technology,
operational squads. Look for having a clear objective and
reporting line within your team. If this is not possible, they
should not be there. At the end of the day, accountability is
hard to be split across managers.
fl
fi
fl
fl
ORG STRUCTURE
Every company you go nowadays you see a variation of
the "Spotify Model". I won't even link because there are many
posts around and I'm not sure even Spotify uses it anymore.
The thing is that as it happened with Scrum, it layered roles
and organizations over existing positions and teams.
Using the old RASCI matrix may help but I found out that the
R and A matters the most. Ask: "Who is responsible to get
things done, who will be accountable if they don't".
fl
fi
fl
deal with con icts across "tribes" ?
Organizations that were not born this way (most if not all of
them) may have shared codebase and processes. Who owns
them prior to a big micro service split and rewrite ? Look up
for teams called "ACME", "ATLAS", "PHOENIX" or
"SKUNKWORKS" that "takes care of what no one is looking
for"
ff
fl
ff
fi
Vertical Tribes over a thin engineering horizontal and a catch all back
o ce team
ff
ff
ff
fi
fi
fi
fi
8.
DELIVERY
I
've mentioned the Accelerate book before and it
provides a good framework to evaluate delivery. When I
say delivery I mean the mix of running your systems and
all activities connected to it, including building and
shipping code and how it a ects your customers.
Back in the day everything was slow and manual but after the
wide adoption of cloud providers and disciplines as Devops,
SRE and Production Engineering the e ort of engineers in
these teams are set to simplify operations through
automation.
ff
ff
platform presents multiple base metrics but few are not about
something redundant (servers, disks, network).
Cost Management
Investments in good infrastructure engineering yield good
cost management.
It all starts when you Tag and control Cloud resources. No
VM or disk should be up without information about team,
product and owner. With that you can tag which products use
the most, as the cloud dashboards are not that good on
knowing how your platform is structured.
The next step is to conduct monthly resource distribution
reviews. It means simply looking at how your money is
The stable stack I've mentioned is the one that ts well your
development model and containers. Don't stu a huge
application into a thing designed to grow horizontally. 2TB
containers don't make sense.
ffi
fi
ff
fi
ff
fl
fi
fi
nd a session about network costs. The $$ gures are not up
to date but the ow is clear.
I've seen bills growing fast due to non mapped tra c through
Managed NAT Gateways and poorly set S3 buckets. Same for
EKS you can hurt yourself with cross zone tra c. Loose disk
snapshots and images, unused load balancers and gateways
are a source of hidden cost. Keep an eye on them, tidy up.
INFOSEC
Being on the losing end of a leak or security incident hurts.
You are not alone. It is not if, it is when. Working with security
has a double burden: it is always critical and you have to deal
with the worst kind of initiative all around. Be mindful of your
mental health all the times.
fi
fl
fi
ffi
ff
ffi
ff
ff
ff
ff
grow them. If your company is too small, look at the Infosec
community for a consultant outside of big consulting
companies.
When you say no, people will try to negotiate around it and
this will add to your frustration. This is not a side job. Break
that cycle, separate what is business and compliance from
the core Infosec mission of protecting the business. They
work on di erent speeds. Appendix C presents a team
arrangement that can work well with di erent attributions and
velocities.
Tie this with the work of your Data and Analytics team, write a
data policy and data matrix that tells you the minimal
requirements for GDPR (Europe), LGPD (Brazil), CCPA and
other regulations around the world. Keep a strong track of
data ancestry (where the data came from).
-- Incidents per month
Time to x vulnerabilities found by pen testing.
DATA
You will probably manage a variety of Data teams
combinations. Sometimes they will be close together,
sometimes they will be far apart. It is important to note that
companies will sometimes start something outside of the
product/engineering team to do data science as an
accelerator or valuation booster, not necessarily as part of the
product.
fi
fi
fi
fi
ff
This advice saved my life more times than I could count: “80%
of a data scientist work is data engineering (data preparation
and tooling) — Fabiane Nardon”
fi
fi
fi
ffi
ff
ff
- Create discipline to pick your tooling and avoid big
migrations (anything over 10TB is hard to migrate timely in
the cloud)
- Push work to the teams: analytics, data science,
machine learning should be close to product, it doesn't
work in a project o ce fashion. Look for Airbnb, Uber and
Pinterest benchmarks. Break silos early on. Provide
orthogonal structure and support tho.
- Work on model deployment (for machine learning
models) early on.
- Be exible on how you archive data. Migrating data is a
pain in the cloud, duplicate it if needed (one archive sorted
by date, same data sorted by user ID)
-- Avoid:
Too many of each building block (e.g. standardize
databases and caches as much as possible)
-- Non partitioned databases
Unmanaged mix between events/serverless and
batch processing
-- Building a scheduler (use Apache Air ow)
Building a log pipeline (use ELK, use Athena/S3)
- Teams too far apart or disconnected
I've put together a slide deck about a common data
organization here. You can nd more on appendix B.
fl
ffi
fi
fl
9.
CLOSING ADVICES
I
’ve asked myself if this was a book for a long time while
writing it. Yes, it quali es I guess. It is not the
authoritative source for what you should do but the
information here will get you a long way.
SPAN OF CONTROL
When building or reorganizing teams, keep the span of
control on 5 to 8 people for each manager, including you. Opt
for line managers with small teams and clear objective and
planning rituals that you can help instead of an overly
hierarchical org. Engineering managers should support line
fi
fi
managers, this is their most important job (a close) second
only to hiring.
GROWING LEADERSHIP
Run a Manager Training session. It can be simple as a
book reading club. I suggest you base it on the book “An
Elegant Puzzle”. Conduct role playing sessions to learn how
to give and receive feedback.
fi
ff
Don't save going for less than optimal hiring. Cheap here
means trouble later.
COMMUNICATION
Writing will be what you will do most in the remote reality
we have now. Go for a written culture that is better to keep up
at di erent timezones.
around too much the message will be buried and trust will go
away.
Writing straight to the point means you know what you want
and that's progress.
PLANNING 101
Learn the basics of planning. Don’t invest too much time
on Kanban, Scrum, Agile Frameworks or whatever until it is
not the time. There will be smarter people to reach out to
help but you want to make sure to have a simple way to get
fi
work organized.
With the high level goas at hand we should get together and
estimate, avoiding points, magic scorecards or any indirect
measure.
The estimate is not exact but based on what the team knows
and will improve over time. I constantly remember the team of
what we already have and the cost of managing it both to
prevent non-realistic architectures, to establish a healthy
fi
fi
fl
workload and to keep a realistic concept of “end" in sight.
Have fun !
fi
APPENDIX A.
INTERVIEW TEMPLATES
GENERAL RULES
Get the questions you will ask and
expected response. Try not to double
down on your preferences. Remember it is
Prepare
not a competition. If possible, always do
yourself
separated technical and behavioural
interviews.
ENGINEERING QUESTIONS
Q: How did you transitioned to this career ? What was left
behind, what still helps you ?
A: Give space to the candidate to talk and you to identify what
makes them excited. There is a lot to learn on career and job
transitions.
fl
Q: Tell me about a failure or outage you caused and how
you handled it.
A: Same here, don’t be judgmental, try to explore how the
candidate asks for help, lead, make decisions and learn new ways
of failures.
MANAGEMENT QUESTIONS
fl
Q: Let's say a critical system is down. How do you do to
have your team on it ? What part do you play ?
fi
APPENDIX B.
DATA TEAMS
ORGANIZATION
CARRERS
APPENDIX C.
INFOSEC TEAMS
Infosec teams attention on startups and fast growing
companies will generally be split between three work
streams:
ff
interfaces may create a lot of stress and unneeded tension.
CISO
fi
ff
them comes from shadow IT, lack of cloud knowledge,
shadow data work. From these either they yield important
data or ways to trick customers and the company on giving it
out, including nancial data and money.
fi
APPENDIX D.
CAREER LADDER
Career Ladder is a term that means a lot for di erent
people. For engineers - and any function - it means a path to
progress. What is the plan or blue print for each level in the
company and how to move up.
ff
ff
ff
If you have no ladder, I suggest that you get inspired by
Engineering Ladders and Levels.fyi for how levels compare
across companies. But I also urge you to start simple.
The scope then is well de ned and you can infer a scope
progression from there up to the CTO or to your role in the
company.
After that you can put down how your team would t to this
framework and calibrate them, to make sure that everyone is
on the right level as much as possible. It is not a pure
comparison but you will see that some information is missing
and when you feel con dent I suggest that you add a column
for Execution and a column for Leadership and
Communication.