Staff Engineer

This is a book brought to the office from one Principal engineer. It is interesting to read to learn from the experience of several people climbing the technical ladder instead of the management one. I have a doubt, as the book was written during COVID and I would like to know if the boom of AI has changed anything.

From the ego side, yes, it is cool to be Staff/Principal but I really want to pay the price for that (working long hours…)? Maybe 10y ago, the book would have helped me to figure out the path although looks more focus to software developers, but as a network engineers, you can learn many things.

Four common archetypes of staff-plus roles:

  • Tech lead: focus in one team and report to the team’s manager.
  • Architect: as I say, big-picture guy.
  • Solver: deal with complex problems, can stay a short or longer time dealing with the problem
  • Right Hand: of executives.

Personally, I can see more attraction to the tech lead or solver. The others two look too political and not too “techie”

It is critical to find the archetype that energize you! And something that is repeated often is sponsorship and mentorship. You become “glue”, you don’t code much and the time frames for any project is longer that you are used before and that creates frustration.

Operating at Staff level:

Work on what matters:

  • Avoid snacking: after doing the low effort high impact things, you need to do high effort high impact ones. Anything else is “snacking” and just gives you a false feeling of accomplishment.
  • Stop preening: This is doing low impact, high visibility work. Unfortunately some companies just care about visibility.
  • Stop chasing ghosts: As a senior leader, you need to maintain hold on your ego to avoid investing in worthless work on a grand scale. Take the time to understand the status quo before shifting it.
  • Existential issues: If something dire is happening , that’s the place to be engaged.
  • Work where there’s room and attention.
  • Foster growth: onboarding, mentoring and coaching are mainly neglected, you can give a bit of time to this and leave a legacy.
  • Edit: Sometimes projects are nearly done, just one thing pending. Use your power to complete.
  • Finish Things: This is a bit more than “Edit”, is unblocking and leading to the end
  • What you can only do: if not, it will not be done
  • Why it matters: focus on work that matters, do projects that develop you, and find companies that value you for that.

Writing engineering strategy:

Write five design docs (decisions and trade-offs), then 1 strategy doc.

The design doc format:

  • Start form the problem
  • Keep the template simple
  • Gather and review together, write alone
  • Good over perfect.

The strategy format:

  • Start where you are
  • Write the specifics
  • Give your opinion
  • Show your work to back your opinion

Once you have 5 strategies, write a vision

  • Write about 2/3 years ahead.
  • Ground in your business and users
  • Be optimistic rather than audacious
  • Stay concrete and specific
  • 1 or 2 pages long.

Managing Technical quality:

Follow best practices, focus in evolution than in mandate. One change at a time. Leverage points: interfaces (contracts between systems), stateful systems and data models (intersection between interfaces and state

You need to measure quality, get your metrics, listen to your users, do few but better.You need to track the progress of you quality program, you need to get a sponsor and show the work, build the tools and documentation to support the work, keep your program lean to cancel if doesnt get results. Be self-critical.

Stay aligned with authority:

Now you are one of the people responsible for company, team and manager success. Staff-plus roles are leadership roles. An effective long-term leader, has to follow first. Listen to questions, define purpose and read the room. You will have to deal with jerks. Relationships are more important than success (hard for me to digest) . Create space for others to show up, make the work theirs. Create a network a peers (again difficult to digest), create an ambient for learning.

Present to executives:

How to communicate effectively: Follow the SCQA format

  • Situation
  • Complication
  • Question
  • Answer

Mistakes to avoid

  • Never fight feedback
  • Dont evade responsibility or problems
  • Dont present a questions without an answer
  • Avoid academic-style presentations.
  • Dont fixate on your preferred outcome.

Path to Staff:

Maybe you will have to deliver a Staff-level project, or work in important projects, you need to deserve to be in the room where the decision are made (and leave it if it is not for you) and you need to be visible (difficult to digest)

There is no a shape match all based on the interviews with Staff-plus people.

Staff = work, timing and luck. Takes time, you need to build relationships, you need a mentor, sponsorship,

Deep Learning for Network Engineers

After checking these links (p1, p2), I decided to read the book.

The first part is mainly maths about deep learning. I coudn’t follow much but at least try to get the big picture.

The second one is more about networking concepts and I had big expectations. There was nothing really special, a refresh of ECN (egress port, inform receiver to notify sender to slow down vs PFC (ingress port, pause traffic flow). ECN needs to kick in before PFC: xON < WRED Min < WRED Max < xOFF. The use of both is called as DCQCN. This is a reference from the book for Cisco. There are references to the alternatives of ECMP as it is a main problem for elephant flows generated by GPUs. But it is mainly vendor features than standards (advance routing and packet spraying). It mentions NCCL and NVLink that is something I wasn’t really clear and at least I can see a bit the point.

I guess, I will need to give a second read at some point to refresh the theoretical/maths part of AI.

Anatomy of a Breakthrough

Honestly this book reminds me to “Do the work” that I read recently. This is more scientific but easy to digest.

It is about how to deal with being stuck, with its different meanings

  • you can’t make progress
  • you are fixes in a place long enough to feel discomfort.
  • your existing habits and strategies are not solving the problem.

Th overall summary is that action is the bigger unsticker.

It mentions different strategies to move forwards. From breaking down the goal is smaller chunks. We will always face plateaus and lifequakes.

Most of the times, we quit to early, just a few steps from the breakthrough. So just ask you, can I keep going? You are more creative than you think, at the first sight of difficulty, persevere. But, in for me this is the difficult thing, you dont have to persevere forever. You need to make some markers and assess: ie, give you 50% more time that you thought you would need.

Novelty is overrated (Google search, Amazon, etc) Patience and persistence solve poor-timing and allow not-quite-ripe ideas to mature.

If something comes to you quickly, it’s likely to come to other people in your culture just as quickly: question every decision, three times.

Dont let the small or unimportant problems to grow. Do preventive maintenance like the airplanes (ABC + checklists)

Slow down, do less. A threat is a challenge, embrace failure. Think of the worst scenario and you will realise that life goes on.

Maximizer (got the best outcome?) vs satisfacer (good enough?): Maximizer got stuck as they can’t know if they have the best solution. Satisfacer know what is good enough and moves on.

Make it simple, be flexible, less is more, perfect is the enemy of done, 100% original is impossible. And add diversity to your strategy.

So take action (use a noun not a verb), micro-schedule and put some constraints on it, move your body (take walks), be nonjudgemental (failing is ok), be curious and learn.

The Art of Being Alone

This is a tiny book but important, for me. For a person used to be alone, not very sociable, looks like being alone is a curse, due to different social pressures. And it is easy to feel bad about it. And I am not the first one saying this. This is not to say that you must be alone, that being alone is the best thing ever. The contrary, it is making the most of it. We have only one life, alone or not, make the best of it.

Being happy with yourself, is being happy being with you, your thoughts

We dont hate being alone. We hate to believe that we have been left behind. But there is nothing wrong with us. Being alone is part of the game of life. Things come and go. You can control it, you need to be prepared for any outcome.

Loneliness means being yourself with sympathy and misery, but remember nothing is wrong with you.

This reminds me to El Quijote… we subconsciously (and I know I am there) are convinced that one day someone day will come to save us, rescue us, to love us. We choose to be rescued or being the victime (and that is cruel to ourselves), but life is not a movie, comic, book, etc. We have all the tools to rescue ourselves. No excuses.

You need to know-yourself, the good and bad things, nobody is perfect. And this interest is for your whole life. Define who you are and/or who you are not. That may you to realize that all those “social” things, are not up to your standard or definition.

Learn to define your definition of everything. Don’t make your life a wish list of what you think everyone has.

One thing at each time. Action is the cure for almost everything.

Make your alone time addictive. What is the one thing you do every day to make yourself happy? For this you need self-awareness. And learn a new skill, although if it just takes 15 minutes a day! And read books!

Do The Work

This is a tiny book, with the main focus to fight procrastination = Resistance.

If you have a big project in your hands, having this book and reading it often, can help you.

Don’t think. Act. Be Stubborn

Don’t prepare. Begin. Do a research diet, just 3 book about the subject.

Three Act Structure: beginning, middle, end. Work backwards, start with the end.

What is this about? Answer in a tweet style.

Get the full working drafts ASAP.

Work, Work, Work. Then Act/reflect = refine your “What is this about?”

You will hit a wall. You will crash. Then you have to grow, we need to solve the problems.

And when you are getting to the end, you need killer instinct, you need to ship! Resistance is strongest at the finish. When we ship, we are exposed.

Fear of success is the essence of Resistance.

And start again, before you are ready. Celebrate, put start again.

Do you talk funny?

I read this book, for the idea to improve my public speaking, something I have done just a few times but I thought it is a good reminder and even better trying to add humor to one presentation

The first point is to start with a story. By nature we are attracted to stories, and you need to tell it in present, like you are living it in the moment. And get the public feeling that they could be there.

Adding humor is hard bit for me, as well, depends on the time of humor you want to add, at the end of the day, I want to make good presentations, but it is clear if you add something funny, the audience will be more engaged with it and remember it!

For the jokes perspective, it is important to trim them to the max, remove the unnecessary. Three phases: Preparation, anticipation and punch line! And you need to write the jokes. This is very critical step. The most funny comedians work a lot in their set and jokes, it is all preparation, rehearsal and improvement of your lines

You need to be sure, you memorize your set, like using the memory palace method. And be familiar with the audience.

I should have taken more notes from the book, it is small and easy to read. So I should give it another go (when I have a presentation or job interview)