<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: João Martinho</title>
    <description>The latest articles on Forem by João Martinho (@jdmartinho).</description>
    <link>https://forem.com/jdmartinho</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F319442%2F7aab0f2c-0260-4c58-a30b-2bc05ff96c11.jpeg</url>
      <title>Forem: João Martinho</title>
      <link>https://forem.com/jdmartinho</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/jdmartinho"/>
    <language>en</language>
    <item>
      <title>Management Lessons From Hard Knocks</title>
      <dc:creator>João Martinho</dc:creator>
      <pubDate>Thu, 10 Feb 2022 18:41:47 +0000</pubDate>
      <link>https://forem.com/jdmartinho/management-lessons-from-hard-knocks-1261</link>
      <guid>https://forem.com/jdmartinho/management-lessons-from-hard-knocks-1261</guid>
      <description>&lt;p&gt;It’s &lt;a href="https://en.wikipedia.org/wiki/Super_Bowl_LVI"&gt;Super Bowl&lt;/a&gt; season and everyone is usually excited either for the big game or for the half-time show.&lt;/p&gt;

&lt;p&gt;While the Super Bowl is great I usually get excited with the NFL around August. Why August? Well, I suppose most people reserve their summer holidays for that period, so there’s that.&lt;/p&gt;

&lt;p&gt;Another thing that happens in August is the NFL preseason kicks in full swing. And while the anticipation is great, that’s not why I’m writing this. I’m writing this because August for me is synonym with Hard Knocks.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Hard_Knocks_(2001_TV_series)"&gt;Hard Knocks&lt;/a&gt; is a reality TV show from HBO that goes behind the scenes with an NFL team. Every summer we get to listen to &lt;a href="https://www.imdb.com/name/nm0000630/"&gt;Liev Schreiber&lt;/a&gt; narrate the challenges rookies have to navigate to make the 53 men roster as well as the antics of the team’s primadonnas. But the most interesting aspect for me every year is the coaching staff and their ideas and interactions.&lt;/p&gt;

&lt;p&gt;A few &lt;a href="https://www.goodreads.com/book/show/37669395-gridiron-genius"&gt;leadership books&lt;/a&gt; have come out over the last few years based on famous NFL coaches or leaders and that’s great, but nothing beats seeing coaches in action and the effect their techniques (or lack of) have on players and staff.&lt;/p&gt;

&lt;p&gt;Here are some of the lessons that I picked up from over a decade of watching Hard Knocks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Always Have a Depth Chart
&lt;/h2&gt;

&lt;p&gt;If you haven’t heard of a depth chart you’re not alone. At my previous job when I mentioned them at first none of my colleagues knew about them but soon took to using them.&lt;/p&gt;

&lt;p&gt;A depth chart in NFL lingo is nothing but a matrix of all the roles and positions you have for the team (e.g. Quarterback, Running Back, Wide Receiver, Offensive Lineman, Cornerback, etc) and how many people you have that can fill that role or position.&lt;/p&gt;

&lt;p&gt;In the NFL you have an offensive team, a defensive team, and a special team for those occasions when you need to punt, defend or attempt to score a field goal, kickoff and return, etc. This means that not only does the depth chart allow us to visualize how many quarterbacks we have but also how many roles a player can fill. &lt;a href="https://en.wikipedia.org/wiki/Devin_Hester"&gt;Devin Hester&lt;/a&gt;, a former player with the Chicago Bears, among other teams, started his career as a cornerback but made his name returning punts and kickoffs, even scoring the first, and only so far, opening kick of a Super Bowl. Later he proved his versatility by converting to a wide receiver. On a depth chart, DH could theoretically appear in three different cells, albeit in different order and priority of usage.&lt;/p&gt;

&lt;p&gt;So, how can we use this in our own teams delivering software?&lt;/p&gt;

&lt;p&gt;A key tenet I abide by is to always attempt to make myself dispensable. In order to do that I have to constantly be growing great engineers into leaders. Suppose my director asks me how are we doing in hiring and how much headcount do I need for next year. Should I just shrug my shoulders and say something like “gimme as much as you think you can get”?&lt;/p&gt;

&lt;p&gt;Depth chart to the rescue! Grab your manager friends and go over the whole business unit for instance. Why do it with friends? Because everything is better with friends of course! I joke, but an important aspect of this is calibration. Without going into details it’s very important that expectations are leveled and calibrated among managers and teams (if your organization doesn’t have a career path with a framework for calibration now is a good time to start).&lt;/p&gt;

&lt;p&gt;Get all your roles such as Junior Software Engineer, Mid Level Software Engineer, Senior Software Engineer, etc. Then for each role see how many people you have in that role. You can go further into discussions of performance (a Senior Engineer is not performing at their level) but I’ll leave that for now. The simple version just assumes people are performing at or above their current level. Once you’re finished you have a simple visual tool for seeing how many people you have for each role of your organization. Sometimes a simple trick like this is all you need to understand you need to ramp up your hiring pipeline at the graduate level. Or maybe you find out that you’re not growing seniors fast enough and if one of your two seniors leaves you may be in trouble.&lt;/p&gt;

&lt;p&gt;You can even go further with this and adopt a matrix style of the depth chart for expanded roles (kind of like a RACI matrix) and figure out who is able to fill in which role.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practice Constant Feedback
&lt;/h2&gt;

&lt;p&gt;This one should be easy and self-explanatory but let’s roll with it. It’s a well-known practice that today’s best organizations perform some sort of feedback rounds, like a 360-degree feedback review, where you ask for feedback from your peers, managers, and collaborators.&lt;/p&gt;

&lt;p&gt;Well, it’s not that different in the NFL. The best coaches do it all the time. If a player caught a difficult pass, they’re there applauding them. If the player dropped the ball, they’re there yelling...not really. The really good ones save it for later. They go over it with their position coaches and offer feedback in private if it’s quite bad. Of course, if it’s really impactful and in the moment, the coaches still grill the players. It comes with the role.&lt;/p&gt;

&lt;p&gt;I don’t suggest we do the same in our workplace, as high-pressure as it might be. This is one area that I must emphasize it’s different when you’re an NFL player, not that I would know.&lt;/p&gt;

&lt;p&gt;And it’s not only the coaches that do it. The show offers glimpses of what makes great players great and apart from natural talent and lots of hard work you’d be surprised at the number of players that ask for feedback from position players. It’s quite normal to see rookies getting advice from seasoned veterans. If this is not mentoring in action I don’t know what is.&lt;/p&gt;

&lt;p&gt;So make sure you’re allowing time for constructive feedback in your 1:1s and if you see someone doing something great, praise them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Delegate, Delegate, Delegate
&lt;/h2&gt;

&lt;p&gt;I’m not American, that should be obvious from my name, so my drug of choice as sports are concerned has always been soccer (just football for me). In a soccer team, you usually have 3 or 4 coaches. The head coach, one or two assistant coaches, and a goalkeeper coach. Sure, there’s more staff, like the doctor, physio, etc, but they’re not the core of the technical team.&lt;/p&gt;

&lt;p&gt;So when I started watching the NFL around 15 years ago I was confused with all the coaches and staff on the sideline. Why do they need so many of them? Turns out an NFL team is quite big. There are 53 players on the main roster and more in reserve and training teams. American football is also a very specialized game, to the point a player in a position may not be able to play in another position due to completely different physical requirements. The pounds that are handy when you’re trying to protect your quarterback from the opposing team’s linebackers, by literally forming a wall around him, aren’t great when you’re trying to run across the field like you’re competing with Usain Bolt to catch a ball flying through the air.&lt;/p&gt;

&lt;p&gt;The head coach can’t do everything. He can’t keep up with the personal issues of dozens of players. He can’t find enough time in the day to assess the competency of every single player and design offensive, defensive and special plays, and prepare the scouting report on the opposing team. So he delegates. He delegates to his coordinators, position coaches, and assistants. Every one of these may then delegate more to their own assistants and so forth.&lt;/p&gt;

&lt;p&gt;There is a clear set of expectations from each coach and before, during, and after each game the coaches meet to talk about them. The head coach coordinates everyone and is akin to a CEO or VP of Engineering at least with multiple Directors under him.&lt;/p&gt;

&lt;p&gt;You should do the same. It’s hard to keep track of every feature on the backlog and help the PM refine it while you’re worrying about reviewing the career plans of your engineers. And that recruitment plan which includes refactoring the job specifications while reaching out to your recruiter to get the latest from the university campus action that happened last week? Oh, I have about 100 resumes to review now? Don’t even get me started when a struggling team member is thrown into the mix. If you don’t believe all of the above will coincide at some point in your career, you’re either delusional or into wishful thinking. Which are kind of the same thing aren’t they?&lt;/p&gt;

&lt;p&gt;So prepare yourself and delegate. Identify key individuals and prepare them by coaching and mentoring. Start them with smaller tasks that you have done multiple times. And then when the storm hits you’ll have your back covered.&lt;/p&gt;

&lt;p&gt;Oh and the bonus? People are usually thankful that you gave them new tasks and responsibilities to do. That’s actually how they grow and you make your depth chart heavier on the senior roles.&lt;/p&gt;

&lt;h2&gt;
  
  
  Release Every Week
&lt;/h2&gt;

&lt;p&gt;Every Sunday an NFL team releases. Whatever challenges they had during their week (sprint) they are now putting all their hard work (training, strategy, tactics, play design) into production. The fans appreciate it and usually, they leave satisfied, especially when their team wins.&lt;/p&gt;

&lt;p&gt;What if an NFL team didn’t play that week? And the week after that?&lt;/p&gt;

&lt;p&gt;They would just go on training relentlessly, thinking that “the fans will love it when they see us play”. But more often than not what will happen is that the fans will not see them play. A number of things conspire against this. It can be running out of money, time, people, patience, or all of the above. The truth is that it’s better when you release it. Even the Detroit Lions showed up &lt;a href="https://en.wikipedia.org/wiki/2008_Detroit_Lions_season"&gt;week after week in 2008&lt;/a&gt;. And even though I bet it was a miserable slog the good news is that there was nowhere to go but up after that. They got &lt;a href="https://en.wikipedia.org/wiki/Matthew_Stafford"&gt;Matthew Stafford&lt;/a&gt; and got better. Not by much, sure, but better. And the season after that they kept getting better eventually getting a &lt;a href="https://en.wikipedia.org/wiki/2011_Detroit_Lions_season"&gt;winning season&lt;/a&gt; and making the playoffs for the first time in decades.&lt;/p&gt;

&lt;p&gt;It’s the same thing with the software we are working on. If we don’t put it in front of people we’ll never know the ugly truth of it. It’s sure to be riddled with bugs as much as we control for quality and advocate for best practices and the worst is that it might not even be what people hoped it was. But guess what? We can only get better.&lt;/p&gt;

&lt;p&gt;Next time you’re thinking of postponing that release think about the ‘08 Lions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Retrospective Everything
&lt;/h2&gt;

&lt;p&gt;The NFL is famous for having obsessive coaches that analyze and measure everything leaving nothing to chance. But of course, there’s no such thing as a guaranteed score. And a plan is only good when you get to use it, even if it’s for that rare occasion. But after you have a plan, you retrospective its usage. And then you &lt;a href="https://www.youtube.com/watch?v=MeNYQaS3rZI&amp;amp;ab_channel=NFL"&gt;adapt and improve it&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Before and after each game they sit together with key players analyzing plays and dissecting what went wrong and what went right. Coordinators and position coaches regularly review footage of players in training and in-game and make notes for them. Players spend hours studying video and analyzing what went wrong in the last play of the game.&lt;/p&gt;

&lt;p&gt;This type of culture is indeed...obsessive. Although I wouldn’t obsess too much about everything the useful takeaway from this is that we should plan, measure and plan again.&lt;/p&gt;

&lt;p&gt;How do you know if your features are having the desired business impact? Measure it and do a retro on them.&lt;/p&gt;

&lt;p&gt;How do you know if your process is supporting the intended release schedule? Measure it and do a retro on it.&lt;/p&gt;

&lt;p&gt;Of course, in order to measure something you need to know what to measure and that is where the planning becomes important. Without at least a plan you won’t know what to do anyway. Once you have a plan, for whatever task or objective it might be, you can identify what you want to measure and then later reserve time to think about it, analyze and come up with any adjustments needed.&lt;/p&gt;

&lt;p&gt;Apart from classical sprint retrospectives (which should be well-known by now) to do continuous improvement in a single team I can suggest group retrospectives either for a group of teams together or a function. Have you ever done a management retro? It could be painful to dissect all the decisions you and your manager peers have done over the last 3 months and how have they contributed to business value but nobody I met will deny it’s not useful.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;And there you have it, a few management lessons that I’ve picked up from watching the behind-the-scenes of the NFL.&lt;/p&gt;

&lt;p&gt;It doesn’t matter the area in which you’re working, great lessons are always useful and as such, I hope you find this useful in your work too.&lt;/p&gt;

</description>
      <category>management</category>
      <category>leadership</category>
      <category>career</category>
      <category>coaching</category>
    </item>
    <item>
      <title>Compound interest in your career: how use the power of the environment to accelerate your professional growth</title>
      <dc:creator>João Martinho</dc:creator>
      <pubDate>Thu, 05 Mar 2020 20:07:02 +0000</pubDate>
      <link>https://forem.com/jdmartinho/compound-interest-in-your-career-how-use-the-power-of-the-environment-to-accelerate-your-professional-growth-4j5g</link>
      <guid>https://forem.com/jdmartinho/compound-interest-in-your-career-how-use-the-power-of-the-environment-to-accelerate-your-professional-growth-4j5g</guid>
      <description>&lt;p&gt;Over the last week, I’ve been reading Judith Rich Harris’ &lt;a href="https://www.amazon.co.uk/gp/product/0747548943/ref=as_li_tl?ie=UTF8&amp;amp;camp=1634&amp;amp;creative=6738&amp;amp;creativeASIN=0747548943&amp;amp;linkCode=as2&amp;amp;tag=joasnot-21&amp;amp;linkId=8f6ed82213c0e4e9a9db3a11a0e64612"&gt;The Nurture Assumption&lt;/a&gt;, where the author exposes the idea that children are not so much influenced by their parents as they are by their peers. Most examples Harris gives us during the book show that the environment in which children grow up is a lot more powerful in socializing them than their parents. Despite best intentions for getting children to behave in certain ways at home, the world outside and other children are the keys to derive their social behaviors which might or might not impact their adult lives.&lt;/p&gt;

&lt;p&gt;This got me thinking about a very simple observation from the workplace. Put mediocre engineers in a team of great engineers and watch them grow. It seems obvious once it’s stated like this doesn’t it? And yet how many people forget about this simple principle when applying and choosing a job?&lt;/p&gt;

&lt;p&gt;Let me elaborate a little bit on this last rhetorical question. Imagine you’re looking for a new job and after some arduous code tests and technical interviews you finally have a couple of offers in your hand. As a software engineer you want to work with a hopefully recent and great technology (whatever that means for your particular industry and interests), get a nice salary and work on challenging products. These are the most common requirements when thinking about a job offer.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What technology do you guys use?&lt;/li&gt;
&lt;li&gt;How much am I going to get paid?&lt;/li&gt;
&lt;li&gt;What will I be working on?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are the typical questions I hear from candidates in interviews. A surprisingly small number of candidates ask the question &lt;strong&gt;“What does your team look like and how do you work together?”&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The reason why that is surprising to me is that working in a team of great engineers who put the focus on sharing knowledge, helping others and educating the team has the same power as essentially &lt;a href="https://en.wikipedia.org/wiki/Compound_interest"&gt;compound interest&lt;/a&gt; for your career. In other words, it’s a snowball effect disguised in plain sight. &lt;a href="https://www.amazon.co.uk/gp/product/1785041274/ref=as_li_tl?ie=UTF8&amp;amp;camp=1634&amp;amp;creative=6738&amp;amp;creativeASIN=1785041274&amp;amp;linkCode=as2&amp;amp;tag=joasnot-21&amp;amp;linkId=7b8502a95eb13a4de7f760cf84b17ab2"&gt;Tools of Titans’&lt;/a&gt; author Tim Ferriss already said that you are the &lt;a href="http://uk.businessinsider.com/tim-ferriss-average-of-five-people-2017-1?r=US&amp;amp;IR=T"&gt;average of the five people&lt;/a&gt; that you spend more time with. I’ll propose here that you should be using that when it’s time to choose a job.&lt;/p&gt;

&lt;p&gt;Let’s think about this for a moment by examining each one of these questions in more detail.&lt;/p&gt;

&lt;p&gt;If you take the job with the most recent technology does that guarantee you’ll grow your career, become smarter and get more money in the long run? Maybe. That’s an honest answer. Technologies come and go and in a software engineer’s lifetime you’ll probably end up working with dozens of programming languages, frameworks, and techniques. Do you want to bet your career in Angular’s success? What about Spring? Should you be the .NET MVC guy? I’ll grant you specializing in a particular technology that could allow you to surf a wave of clients and projects for as much as a decade with great return on investment, especially if you work as a consultant directly for clients, taking out agencies and other services middlemen. But surely you can’t be thinking in realistic terms to be using this 15 or 20 years from now and counting on it to pay your bills?&lt;/p&gt;

&lt;p&gt;Speaking about bills, what about money? Surely you can’t be saying that I shouldn’t take the highest paying job, all other things being equal. Again, my answer will be maybe. It will depend a lot on which phase of your career you are, on your own personal goals and just responsibilities. Maybe you have a family that depends on you. Maybe you want to make a big investment in a couple of years and you need to save some cash for that. The point is, this will be a contentious answer no matter which way I put it. The reason why I’m bringing it up then is to give you an alternative view to the common position, which is just taking the highest-paid offer. What about taking the offer where you’ll be working on more difficult challenges? What about taking the offer where you’ll be working with a great team? If you apply some long term thinking to this, and taking some numbers to illustrate this example, you might be refusing company’s A 50k offer to go work with company B on a 40k offer that allows you to grow at 4x the pace you would in your highest offer. Presumably, you will be adding much more value in a year or two at company B that the managers will have no choice but to promote you. The worst-case scenario on company A is you being tied down to a 50k+ job in 2 years' time without any real options to grow from there. The worst-case scenario on company B has you not being promoted by the managers, still making less money than on company A but with confidence and skills to command higher offers from other companies, should you decide to leave. Of course, this is dependent on job markets, but just for the numbers themselves. Value is value, no matter what part of the globe you are and if you add value people will jump at giving you opportunities (and money to go with them).&lt;/p&gt;

&lt;p&gt;The last of our three questions have to do with what will you be working on. This one is probably one of the most relevant for me. A good product can help you learn a lot about software architecture, design, and patterns. Working with legacy codebases, while not pleasant for the most part, could provide an opportunity for relentless refactoring, assuming quality checkpoints such as automated regression testing are in place. Again, the answer here about your career growth becoming tied directly to the projects you work on is maybe. The project can go horribly wrong and yet you learned so much from it that you have newfound confidence about tackling other challenges in the next project. The project can also be cruising along well and you can be working on maintenance with very little emphasis on actually improving the product. And this will have me jump straight into my last question and the one that I consider to be the most important one to ask.&lt;/p&gt;

&lt;p&gt;Who do you think will have the better chance of becoming a great software professional, in the long run, the developer who ended up working with his favorite technology, in a challenging project by himself (and making more money in the meantime) or the developer who had to learn something new from a great team that put time in to teach him and offered so much advice on how to write code, design practices, and architecture that he now can teach it himself?&lt;/p&gt;

&lt;p&gt;I truly believe it’s the second. Great teams make great software. And great teams are hard to come by, but that doesn’t mean they don’t exist and surely it doesn’t mean you can’t ask about them in a job interview. The environment around us plays a huge role in shaping everything about us. A smart coder turned loose in a team that plays along well with anybody will transform him, one can say 10x him, to use the famous &lt;a href="https://www.google.ie/search?q=10x+programmer&amp;amp;oq=10x+pr&amp;amp;aqs=chrome.1.69i57j0l5.2673j0j7&amp;amp;sourceid=chrome&amp;amp;ie=UTF-8"&gt;10x metaphor&lt;/a&gt;. Humans are a social species and as such, it’s only natural that we learn from others. I can definitely see great developers ending up in crappy (or non-existent) teams, working in recent technology stacks and what it just brings them unhappiness. Unhappy developers are not productive developers. And developers that are not productive don’t learn as much, which directly translates into career stagnation.&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;Stretching to learn by yourself is a great strategy for growth but it doesn’t beat working 8 hours per day in a team that throws so much feedback and knowledge at you that by the time you realize it you are the equivalent of a veteran in your lone wolf friend’s company. Bringing it back to the idea of compound interest, your learning, your drive to excel, that is the principle. We can assume it will grow linearly throughout time. What you learn via your team, that is the interest that you get and this will grow exponentially. The key to accelerating your career growth is then, counter-intuitively, to give it to others around you and not focus on it yourself too much. Think about it the next time you’re interviewing for a job and who knows, you might just 10x yourself in a couple of years.&lt;/p&gt;

</description>
      <category>career</category>
      <category>teams</category>
      <category>growth</category>
      <category>development</category>
    </item>
  </channel>
</rss>
