<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[The Desk of Tom]]></title><description><![CDATA[Articles about Software Engineering leadership, people management, and other related topics.]]></description><link>https://www.deskoftom.co.uk/</link><image><url>https://www.deskoftom.co.uk/favicon.png</url><title>The Desk of Tom</title><link>https://www.deskoftom.co.uk/</link></image><generator>Ghost 5.79</generator><lastBuildDate>Thu, 22 Feb 2024 23:13:56 GMT</lastBuildDate><atom:link href="https://www.deskoftom.co.uk/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[What does it mean to be a leader?]]></title><description><![CDATA[When people talk about being a leader, they talk about setting goals, managing teams, and driving change. But being a leader is so much more than that and so much less. Anyone can be a leader or not, from the intern to the CEO. So what does it mean, to me, to be a leader?]]></description><link>https://www.deskoftom.co.uk/what-does-it-mean-to-be-a-leader/</link><guid isPermaLink="false">649eed977f012d000174434b</guid><category><![CDATA[Leadership]]></category><category><![CDATA[Career]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Fri, 30 Jun 2023 15:12:28 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1504805572947-34fad45aed93?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDIyfHxsZWFkZXJzaGlwfGVufDB8fHx8MTY4ODEzNzE3OXww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1504805572947-34fad45aed93?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDIyfHxsZWFkZXJzaGlwfGVufDB8fHx8MTY4ODEzNzE3OXww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="What does it mean to be a leader?"><p>My experience comes In the context of software engineering, but I believe this summary would apply to leaders in any industry sector.</p><blockquote>&quot;Leadership refers to the ability to exert influence and inspire others towards achieving common goals and delivering high-quality outcomes.&quot;</blockquote><p>So instead of focusing on traditional people management, leadership should be focused on the power of influence and the ability to guide and shape the direction of people without formal hierarchical authority.</p><p>But what does that mean in more concrete terms?</p><h2 id="breaking-down-leadership">Breaking down leadership</h2><p>Here are some of what I see as key aspects of leadership</p><h3 id="1-vision-and-strategy">1. Vision and Strategy</h3><p>A leader needs a clear vision, a purpose (a why), and the ability to communicate a strategic direction to help reach that vision. The vision and strategy will inspire and motivate team members to align their efforts towards this shared objective, providing them with a sense of purpose and an understanding of how their efforts directly impact success.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1548438294-1ad5d5f4f063?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDl8fHZpc2lvbnxlbnwwfHx8fDE2ODgxMTA4NjV8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="What does it mean to be a leader?" loading="lazy" width="3916" height="2606" srcset="https://images.unsplash.com/photo-1548438294-1ad5d5f4f063?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDl8fHZpc2lvbnxlbnwwfHx8fDE2ODgxMTA4NjV8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1548438294-1ad5d5f4f063?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDl8fHZpc2lvbnxlbnwwfHx8fDE2ODgxMTA4NjV8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1548438294-1ad5d5f4f063?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDl8fHZpc2lvbnxlbnwwfHx8fDE2ODgxMTA4NjV8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1548438294-1ad5d5f4f063?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDl8fHZpc2lvbnxlbnwwfHx8fDE2ODgxMTA4NjV8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@randytarampi?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Randy Tarampi</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><h3 id="2-communication-and-collaboration">2. Communication and Collaboration</h3><p>Effective communication is crucial for any leader. You should be able to clearly articulate difficult concepts to expert and non-expert stakeholders and team members. Having the ability to foster open and transparent communication whilst enabling and encouraging collaboration across different roles and departments will also be crucial. To be an effective leader, you need to be able to act as the glue that will bind together everyone into a cohesive whole, all working toward the same goal.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1566140967404-b8b3932483f5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE3fHx0ZWFtfGVufDB8fHx8MTY4ODEzNzQ3MXww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="What does it mean to be a leader?" loading="lazy" width="6000" height="4000" srcset="https://images.unsplash.com/photo-1566140967404-b8b3932483f5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE3fHx0ZWFtfGVufDB8fHx8MTY4ODEzNzQ3MXww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1566140967404-b8b3932483f5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE3fHx0ZWFtfGVufDB8fHx8MTY4ODEzNzQ3MXww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1566140967404-b8b3932483f5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE3fHx0ZWFtfGVufDB8fHx8MTY4ODEzNzQ3MXww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1566140967404-b8b3932483f5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE3fHx0ZWFtfGVufDB8fHx8MTY4ODEzNzQ3MXww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@vladhilitanu?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Vlad Hilitanu</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><h3 id="3-trust-and-respect">3. Trust and Respect</h3><p>Leadership requires you to build influence and credibility among team members and stakeholders. To be able to do that, you need to build trust first. This takes time but is most easily achieved through demonstrating your expertise, actively contributing to discussions, being a willing collaborator on other people&apos;s problems, and establishing a track record of making sound, well-considered decisions. By earning the trust of others, your opinions and input will hold more value. Exercising that trust well, you will build up a track record of successful outcomes, resulting in respect for your actions within others. With this trust and respect, you will be more effectively able to inspire them to act on your ideas and vision.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1455849318743-b2233052fcff?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDc2fHx0cnVzdHxlbnwwfHx8fDE2ODgwNzAwMTN8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="What does it mean to be a leader?" loading="lazy" width="6016" height="4016" srcset="https://images.unsplash.com/photo-1455849318743-b2233052fcff?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDc2fHx0cnVzdHxlbnwwfHx8fDE2ODgwNzAwMTN8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1455849318743-b2233052fcff?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDc2fHx0cnVzdHxlbnwwfHx8fDE2ODgwNzAwMTN8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1455849318743-b2233052fcff?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDc2fHx0cnVzdHxlbnwwfHx8fDE2ODgwNzAwMTN8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1455849318743-b2233052fcff?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDc2fHx0cnVzdHxlbnwwfHx8fDE2ODgwNzAwMTN8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@goian?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Ian Schneider</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><h3 id="4-decision-making">4. Decision Making</h3><p>Leaders must make well-informed decisions that positively impact the team and project outcomes. By leveraging your respect and trust, you can guide discussions, facilitate consensus, and ensure that decisions are based on diverse experiences and considerations. Ensuring these outcomes are aligned with your vision and the business objectives will only compound the trust and respect people have for you.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1533073526757-2c8ca1df9f1c?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fGRlY2lzaW9ufGVufDB8fHx8MTY4ODEzNzU4OHww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="What does it mean to be a leader?" loading="lazy" width="5434" height="3623" srcset="https://images.unsplash.com/photo-1533073526757-2c8ca1df9f1c?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fGRlY2lzaW9ufGVufDB8fHx8MTY4ODEzNzU4OHww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1533073526757-2c8ca1df9f1c?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fGRlY2lzaW9ufGVufDB8fHx8MTY4ODEzNzU4OHww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1533073526757-2c8ca1df9f1c?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fGRlY2lzaW9ufGVufDB8fHx8MTY4ODEzNzU4OHww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1533073526757-2c8ca1df9f1c?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fGRlY2lzaW9ufGVufDB8fHx8MTY4ODEzNzU4OHww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@soymeraki?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Javier Allegue Barros</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><h3 id="5-expertise">5. Expertise</h3><p>While not always mandatory, having strong expertise in the discipline/industry you&apos;re attempting to lead will help you speak the team members&apos; language and further gain their trust and respect. This expertise helps them feel confident in your vision and gives them someone they feel will provide valuable insights and guide them successfully through difficult challenges. It&apos;s not always possible to have expertise from the outset, but by utilising your skills in communication and collaboration and working to build the trust and respect of your team, you can begin to learn from others and become one.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1467746474745-41dd2c7524ce?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGV4cGVydHxlbnwwfHx8fDE2ODgxMzc2MTB8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="What does it mean to be a leader?" loading="lazy" width="5184" height="3456" srcset="https://images.unsplash.com/photo-1467746474745-41dd2c7524ce?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGV4cGVydHxlbnwwfHx8fDE2ODgxMzc2MTB8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1467746474745-41dd2c7524ce?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGV4cGVydHxlbnwwfHx8fDE2ODgxMzc2MTB8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1467746474745-41dd2c7524ce?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGV4cGVydHxlbnwwfHx8fDE2ODgxMzc2MTB8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1467746474745-41dd2c7524ce?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGV4cGVydHxlbnwwfHx8fDE2ODgxMzc2MTB8MA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@moraisr?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Rita Morais</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><h3 id="6-continuous-improvement">6. Continuous Improvement</h3><p>As a leader, you can influence the long-term success of the team and your vision by promoting a culture of continuous improvement. You need to demonstrate this mindset yourself, being vulnerable, speaking openly about your weaknesses and how you want to address them, and seeking input from your team on how to improve. This will encourage a culture of continuous learning, experimentation, and feedback that will improve everyone&apos;s communication, collaboration and sense of team belonging. By being an example of introspection and continuous growth, you will constantly inspire the team to enhance their skills and drive excellence in outcomes.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1502101872923-d48509bff386?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fHN0ZXBzfGVufDB8fHx8MTY4ODEzNzY3M3ww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="What does it mean to be a leader?" loading="lazy" width="3600" height="2025" srcset="https://images.unsplash.com/photo-1502101872923-d48509bff386?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fHN0ZXBzfGVufDB8fHx8MTY4ODEzNzY3M3ww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1502101872923-d48509bff386?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fHN0ZXBzfGVufDB8fHx8MTY4ODEzNzY3M3ww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1502101872923-d48509bff386?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fHN0ZXBzfGVufDB8fHx8MTY4ODEzNzY3M3ww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1502101872923-d48509bff386?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDV8fHN0ZXBzfGVufDB8fHx8MTY4ODEzNzY3M3ww&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@tateisimikito?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Jukan Tateisi</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><h3 id="7-mentoring-and-coaching">7. Mentoring and Coaching</h3><p>Leadership is about developing the next set of leaders. Leave the door open, the ladder down, and pull others up! The most effective way to do this is via mentorship and coaching. By sharing your knowledge, providing guidance, offering support, asking the right questions, and slowly delegating your responsibilities, you will empower individuals to develop their own leadership skills and expertise. This approach helps ensure that even without you, the team will succeed, and your vision will be a success.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1582592910328-6ed84d453cbe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE1fHxtZW50b3J8ZW58MHx8fHwxNjg4MTM3NzM3fDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="What does it mean to be a leader?" loading="lazy" width="6000" height="4000" srcset="https://images.unsplash.com/photo-1582592910328-6ed84d453cbe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE1fHxtZW50b3J8ZW58MHx8fHwxNjg4MTM3NzM3fDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1582592910328-6ed84d453cbe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE1fHxtZW50b3J8ZW58MHx8fHwxNjg4MTM3NzM3fDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1582592910328-6ed84d453cbe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE1fHxtZW50b3J8ZW58MHx8fHwxNjg4MTM3NzM3fDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1582592910328-6ed84d453cbe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE1fHxtZW50b3J8ZW58MHx8fHwxNjg4MTM3NzM3fDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@nadir_syzygy?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Nadir sYzYgY</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><h2 id="a-leadership-summary">A leadership summary</h2><p>In summary, leadership is about earning trust and respect, inspiring others to act, and building the next generation of leaders. You don&apos;t need to be a hierarchical manager to do this (although, admittedly, it can help); you need to communicate well, be a good team player, and help those around you be a little better.</p>]]></content:encoded></item><item><title><![CDATA[🌱 Planting seeds and growing trees - Staff Development]]></title><description><![CDATA[The key to developing a high-growth mentality (continuous improvement) in the business comes from having managers with the proper focus on the means, the opportunity, and the individual.]]></description><link>https://www.deskoftom.co.uk/planting-seeds-and-growing-trees-staff-development/</link><guid isPermaLink="false">644bb0a4a327fb003d9fe988</guid><category><![CDATA[Culture]]></category><category><![CDATA[Growth]]></category><category><![CDATA[Career]]></category><category><![CDATA[Leadership]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Thu, 04 May 2023 08:05:25 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1444530495635-029990f82ce8?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDE1fHxzZWVkbGluZ3xlbnwwfHx8fDE2ODI2ODIxNjQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1444530495635-029990f82ce8?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDE1fHxzZWVkbGluZ3xlbnwwfHx8fDE2ODI2ODIxNjQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="&#x1F331; Planting seeds and growing trees - Staff Development"><p>I asked on LinkedIn what kind of topic you would like to see me cover next whilst we wait on further progress with the initiatives we are working on at MHR. You requested me to talk about how we plan to develop our staff internally.</p><p>Companies usually focus little on growing their staff or pay lip service to it but leave it to the individual to act. There is some merit to the last part; it&apos;s much easier to help someone gain new skills if they&apos;re actively invested in it. But it&apos;s on us (the company/management) to enable the individual to become invested.</p><ul><li>Okay companies give you the means.</li><li>Good companies give you the means and opportunity.</li><li>Great companies do both and actively work with you to achieve YOUR aims, not their own.</li></ul><p>As a company, you can do little more than give your employees the means and opportunity to learn. The key to developing a high-growth mentality (continuous improvement) in the business comes from having managers with the proper focus. The role of the manager in growth comes in three parts.</p><h2 id="part-1provide-the-means">Part 1 - Provide the means</h2><p>Part 1 is about ensuring individuals have access to the means required to learn. These are the very fundamentals. You must provide your employees access to the latest, highest-quality resources to help them learn.</p><p>This goes beyond a simple &quot;you can use Udemy/Pluralsight&quot; or another alternative. You need to factor in different learning types.</p><p>Do you expense reference books?</p><p>Do you expense in-person training events?</p><p>Do you support further/higher education?</p><p>You can&apos;t just give access to one learning platform and call it done; that&apos;s just paying lip service. Now you have given them the resources, are you giving them the time? Do you ensure every employee has the time to complete their desired learning? It&apos;s all well and good saying they can, but if you only allow them to do it out of hours, they&apos;ll be too tired to make real progress or be unwilling/unable to engage in it.</p><p>If they&apos;re attending a course, do you allow them to do so without using holiday days?</p><p>If they use an online platform, do they have enough hours during the work week to do the training without using their personal time?</p><p>There are many different ways to do this, but a simple place to start is with 10% time. 10% of their working week is dedicated to further learning, so 4 hours (half a day) in a standard 40-hour work week.</p><h2 id="part-2provide-the-opportunity">Part 2 - Provide the opportunity</h2><p>Part 2 is about providing the opportunity to use these new skills. This is sometimes harder than it might sound. There are only a few opportunities to work on large projects, and other commitments have to be seen too. But this is where delegation and innovation can be your friend.</p><p>You can delegate some of your responsibilities to people who want to learn those skills. This helps you both, as it allows you to focus on taking on more responsibility while developing your natural successors.</p><p>Another option is to work with the individual to brainstorm ideas on utilising the new skills to create value for the business. The individual (with your support) can then propose and work on this new idea. This benefits the business by bringing innovative ideas and allowing the individual to use new skills in a business setting.</p><p>This is usually the point at which most managers stop. But the final part is the most critical.</p><h2 id="part-3focus-on-the-individual">Part 3 - Focus on the individual</h2><p>Part 3 is about understanding the goals and values of the individual and helping to craft a path to get there, even if that means growing them toward the door.</p><p>Yes, that means supporting people who want to grow to become a manager when there is no team to manage. To grow engineers who want to learn AI when you don&apos;t have any AI products. I&apos;d even stretch as far as helping people learn the skills to transition careers when there may not be a place for them at the company. Graphic Designer to Developer, Developer to Product Owner. Whatever that path is, your job as a manager is to understand and support the individual in attaining those goals.</p><p>I go a step further than that, personally. I encourage people to use the time to learn other skills. Your tech lead has always wanted to learn the piano ... great, support them in taking a piano class. It might not seem logical to do this, as how does that relate to being a better tech lead? But if you think about it, it&apos;s not so black and white. Learning the piano might help exercise their ability to focus and process information in real-time (reading-sheet music whilst playing) and their creativity as they compose their music. It also just makes them happy. They feel understood, they feel a sense of loyalty and closeness, and they feel supported. This is what all managers are always trying to chase, how to get their teams this feeling through their work because we all know this is the key to retention.</p><h2 id="so-how-do-we-do-it-at-mhr">So, how do we do it at MHR?</h2><p>MHR, well before I ever joined, has always supported people in all 3 ways. This was a critical factor in my decision to join.</p><ul><li>We have an internal L&amp;D team who provide training courses in person.</li><li>We have partnerships with 3rd party training companies.</li><li>We have access to online training services.</li><li>We allow the expense of training and certification.</li><li>We use 10% time</li><li>We don&apos;t force people to use holiday days for in-person training days.</li><li>We are also creating our own Software Academy<strong>*</strong>.</li></ul><p>More critically, we frequently support people in transitioning into new career paths as they want to. Many people in the company have started in one role and subsequently held multiple roles in different areas of the business.</p><h2 id="mhr-software-academy">MHR Software Academy*</h2><p>I asked Ashley, our Academy manager, to expand a bit on the MHR Software Academy. Here is what he said;</p><p>It began 3 years ago as MHR realised that the global talent shortage would be an issue and the best way to mitigate it was to &quot;Grow-Our-Own&quot; with the introduction of an apprentice program.</p><p>We started by bringing on four Web apprentices who have now completed their apprenticeships, been promoted to Junior engineers, and are looking at the next step in their careers. </p><p>The apprentice program then extended to cover software Juniors and Graduate Software engineers joining the department, which has pushed us to further enhance the Career Development Framework already in place for all levels and ensure everyone has the tools and support to further their careers. </p><p>One of the most difficult parts of this was balancing the number of juniors against seniors without causing too much burden on them and slowing down their productivity. As part of the academy, we are looking to remove this barrier by putting in place our own team focussed on supporting the development of juniors and apprentices without burdening the product teams. We are looking to work with training providers to create a phased approach to the academy with a structured training program to upskill junior talent in our tech stack, our frameworks, and our way of working. Then start to integrate the academy engineers into the main product teams once they have grown and completed the learning required not to have a negative impact on the senior engineers.</p><hr><p>How do you do it? How have you overcome some of the challenges we face? What else could we do at MHR? Do you have other ways to encourage and support continuous improvement in your teams?</p><p>Reach out to <a href="https://www.linkedin.com/in/thedeskoftom/?ref=deskoftom.co.uk">me on LinkedIn</a> and let me know.</p>]]></content:encoded></item><item><title><![CDATA[Organisation organisation (pt.2) -Team Structure and Architectural Design]]></title><description><![CDATA[As an organisation grows, the patterns for architecture and the teams that form around them shift. It's common for this shift to cause a drift in the structure of teams and communication patterns, and the architecture they support. This is one of the challenges we are facing at MHR.]]></description><link>https://www.deskoftom.co.uk/organising-organisations-pt2-team-structure-and-architectural-design/</link><guid isPermaLink="false">642ad6d9a88d72003d9c1e9f</guid><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Wed, 05 Apr 2023 12:48:01 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1582130968025-b85c8eba74af?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fENvbHVtbnN8ZW58MHx8fHwxNjgwNTI5MzAy&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<h2 id="systems-and-team-drift">Systems and Team Drift</h2><img src="https://images.unsplash.com/photo-1582130968025-b85c8eba74af?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fENvbHVtbnN8ZW58MHx8fHwxNjgwNTI5MzAy&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Organisation organisation (pt.2) -Team Structure and Architectural Design"><p>As an organisation grows, the patterns for architecture and the teams that form around them shift. It&apos;s common for this shift to cause a drift in the structure of teams and communication patterns, and the architecture they support. This is one of the challenges we are facing at MHR.</p><h2 id="what-is-drift">What is drift?</h2><p>Drift is the separation of the intended/desired architectural design and the design created due to the communication and formation of the teams building it.</p><p>An example would be having a monolith application and a small number (3-4) of small teams (4-6 people) building it. The tech stack is simple, a back-end(BE) language and HTML, CSS and JS for the front-end(FE). Two teams are building the product, containing FE and BE engineers and separate teams for infra/ops and design.</p><p>As the application grows and we create more teams, the decision is made to move the front end onto a modern library like React, Angular, or Vue, as doing so allows you to create a central repository of shared design components. How do we do it?</p><p>Do you create a new centralised team of FE engineers? Do you create a new small matrixed team of FE engineers? Do you move the design into the Product Teams and have a matrixed team of Design and FE?</p><p>This is where drift starts. e.g., create the new shared library of code and leave the teams as they are because you want them to &quot;own their domain&quot;. The org grows even larger, introducing more domains and teams, the communication between all these teams becomes less frequent, and there is a more significant disconnect between them, all natural growth patterns in any org. What do you think happens to the shared library?</p><p>You start to see more instances of code relating to one team and domain &#x2014; a drift from the intent of a centrally shared library. If you have never heard of it, this is Conway&apos;s law in practice.</p><blockquote><strong>Conways Law</strong> &quot;Organisations design systems that mirror their own communication structure.&quot; </blockquote><p>You can break down communication structure into &quot;team structure&quot;, &quot;incentives&quot;, and &quot;operating models&quot;. But for now, we will focus on the interplay between Teams and Architecture. The other aspects are articles all of their own.</p><p>You can picture how much more complicated this gets when you start to think about breaking the monolith into microservices and introducing a modern DevOps model. The amount of drift and the size of the drift can be significant. It happens naturally as the rate of change between the technology system and the teams building it are not the same. The path is not linear.</p><p>So back to MHR ... </p><h2 id="our-teams-and-architectural-drift">Our Teams and Architectural drift</h2><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1567959279487-57286b01cdf5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDl8fERyaWZ0fGVufDB8fHx8MTY4MDUyOTY2OQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="Organisation organisation (pt.2) -Team Structure and Architectural Design" loading="lazy" width="6000" height="4000" srcset="https://images.unsplash.com/photo-1567959279487-57286b01cdf5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDl8fERyaWZ0fGVufDB8fHx8MTY4MDUyOTY2OQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1567959279487-57286b01cdf5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDl8fERyaWZ0fGVufDB8fHx8MTY4MDUyOTY2OQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1567959279487-57286b01cdf5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDl8fERyaWZ0fGVufDB8fHx8MTY4MDUyOTY2OQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1567959279487-57286b01cdf5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDl8fERyaWZ0fGVufDB8fHx8MTY4MDUyOTY2OQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@araltasher?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Aral Tasher</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><p>When the latest product was first created, it was sensibly created out of the engineering group that existed at MHR. As this engineering group built the product, they created an architecture following the desired best practices for the system and the teams based on existing structures and processes. Both sensible decisions to expedite delivery. However, this created a drift between the desired product architecture and the teams from the outset, and this drift has since grown as both the product and the teams building it have grown. It&apos;s time for us to correct this drift to allow us to move forward in the direction we want to take.</p><h2 id="analysing-the-drift">Analysing the drift</h2><p>What is the drift at MHR? As mentioned in <a href="https://www.deskoftom.co.uk/getting-organised-org-organisation-at-mhr/">the opening article in this series</a>, our SDLC is based on the DSDM Framework. Our teams are then built around this model. This means our teams have a Software Delivery Lead, who acts as the line manager for the team members, and the project manager responsible for delivering the work on schedule. The teams are then made up of a mixture of FE and BE engineers and Quality Analysts. All teams are then supported by a central Architecture and Platforms team. The size of the teams is proportional to the size and complexity of the product area they are responsible for. All the teams contributed to a number of repositories relating to &quot;services&quot; as they attempted to build a microservice-style architecture. However, the communication and operating patterns of growing teams with the DSDM framework have resulted in a more monolithic architecture than the intended design. The result is a semi-distributed code base with a lot of tight coupling. The natural result of the drift between the intended/desired architecture and how the business scaled the teams.</p><h2 id="steering-into-the-drift">Steering into the drift</h2><p>We&apos;ve noticed a drift happening at MHR; now, how are we going to correct it? This is where many companies get it wrong. The default answer for many companies at this point is to suggest a re-org. If you&apos;re unfamiliar with the term (lucky you), it&apos;s when you take what you have, rip it apart, and rebuild it into new teams.</p><p>The problem with a re-org is that it kills team morale, breaks existing communication structures, and often results in a few people being &quot;out of place&quot; in the new structure. Usually, those left &quot;out of place&quot; are either made redundant or merged into teams with no sense of purpose, often resigning not long after. Re-orgs are complex and dangerous; they&apos;re a last resort, not the first tool in your tool belt. That&apos;s not what we want to do. Instead, we will correct our drift how you&apos;d correct drift in a car, steer into it, making minor adjustments until you&apos;re back on track.</p><p>We&apos;re starting by adjusting our team structures to align more closely with our intended architecture. Borrowing from Team Topologies, we want to have our teams&apos; own vertical slices of the platform and be able to deliver independently (Stream Aligned). To help us do this, we are moving teams away from DSDM to scrum (<a href="https://www.deskoftom.co.uk/getting-organised-org-organisation-at-mhr/#:~:text=we%20have%20set%20the%20goal%20to%20follow%20scrum%20in%20all%20product%20teams%20as%20our%20first%20step%20away%20from%20DSDM%20by%20the%20end%20of%202023">as per Part 1</a>) so that they focus on delivering value in their product stream. As we do this, we are changing the team structures. We are re-deploying our Software Delivery Leads into positions as Agile Delivery Managers (Scrum masters) or Engineering Managers based on their background and skill sets. Depending on that transition, we will hire to fill the missing ADM or EM. Then we will break down the larger product areas into smaller ones and break apart those larger teams (10+) into two smaller (5-8) closely aligned teams (even sharing the ADM and EM where appropriate).</p><p>This aligns our team structures and communication more with our desired micro-service architecture. Small, independent teams that release and communicate change outwards without relying on other teams.</p><h2 id="straightening-up">Straightening Up</h2><p>You&apos;ll see how all <a href="https://www.deskoftom.co.uk/getting-organised-org-organisation-at-mhr/#where-do-we-want-to-be">the concepts outlined in pt.1</a> connect here. To straighten up the direction of travel, the subsequent correction we will need to make is breaking apart our monolithic and highly coupled&quot;micro-services&quot;. Each new team will begin to work on doing this, taking the areas they are responsible for and transitioning them into a truly independent service so that we can begin to create the architecture to support our independent team structures. In essence, giving us independent teams working on independent services in a microservice architecture.</p><p>How we do this and identify the proper boundaries in our domain to correctly identify how to transition and split teams will be a topic for another post &#x2013; assuming we do so correctly and don&apos;t &quot;over-correct&quot; to find we need to adjust again later. Let&apos;s wait and see.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://images.unsplash.com/photo-1614897464244-86c6b2fdda79?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDR8fGJ1enolMjBsaWdodHllYXJ8ZW58MHx8fHwxNjgwNTMwMjY1&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" class="kg-image" alt="Organisation organisation (pt.2) -Team Structure and Architectural Design" loading="lazy" width="5607" height="3738" srcset="https://images.unsplash.com/photo-1614897464244-86c6b2fdda79?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDR8fGJ1enolMjBsaWdodHllYXJ8ZW58MHx8fHwxNjgwNTMwMjY1&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=600 600w, https://images.unsplash.com/photo-1614897464244-86c6b2fdda79?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDR8fGJ1enolMjBsaWdodHllYXJ8ZW58MHx8fHwxNjgwNTMwMjY1&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1000 1000w, https://images.unsplash.com/photo-1614897464244-86c6b2fdda79?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDR8fGJ1enolMjBsaWdodHllYXJ8ZW58MHx8fHwxNjgwNTMwMjY1&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=1600 1600w, https://images.unsplash.com/photo-1614897464244-86c6b2fdda79?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDR8fGJ1enolMjBsaWdodHllYXJ8ZW58MHx8fHwxNjgwNTMwMjY1&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2400 2400w" sizes="(min-width: 720px) 720px"><figcaption>Photo by <a href="https://unsplash.com/@derveit?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Veit Hammer</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit">Unsplash</a></figcaption></figure><hr><h2 id="lessons-to-learn">Lesson&apos;s to learn</h2><p>The key things we have identified and the key lessons I hope you can take away here are;</p><ul><li>Drift is natural in a growing organisation.</li><li>Correcting drift, as you notice it, is always better than a re-org.</li><li>Conway&apos;s law applies, and your team structure affects your architecture.</li><li>You can&apos;t course correct all at once, you need to make small adjustments, or like when correcting drift whilst driving, you can over correct and drift in another direction.</li></ul>]]></content:encoded></item><item><title><![CDATA[Getting Organised - Organisation organisation at MHR]]></title><description><![CDATA[At some point, as a leader, you will need to "organise your organisation". Everyone will tell you the "right way". But there is no right way. Some ways will work for you and some ways won't. I won't write about the right way. Instead, I will tell you what we are doing at MHR and how we are doing it.]]></description><link>https://www.deskoftom.co.uk/getting-organised-org-organisation-at-mhr/</link><guid isPermaLink="false">641db4f1b80b8e003d6b1f72</guid><category><![CDATA[Leadership]]></category><category><![CDATA[Growth]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Fri, 24 Mar 2023 16:10:20 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1627873828998-50b7aeec7ffe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fG9yZ2FuaXplZHxlbnwwfHx8fDE2Nzk2Njg0NTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<h2 id="organising-an-organisation">Organising an Organisation</h2><img src="https://images.unsplash.com/photo-1627873828998-50b7aeec7ffe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fG9yZ2FuaXplZHxlbnwwfHx8fDE2Nzk2Njg0NTk&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Getting Organised - Organisation organisation at MHR"><p>This will likely be the first of many articles taking you through our decisions and how they play out. You will see what we did right, did wrong, and learned as we went. You can draw your parallels and get ideas for navigating these waters your way for your situation.</p><h2 id="the-problem-we-face">The problem we face</h2><p>MHR is in a position that many established businesses find themselves in. We are several generations of the core product idea in, with almost 40 years of building software behind us. In those ~40 years, we have made many decisions based on the best practices of the time and the information available to us. The ever-evolving world of technology and the recent speed at which it has changed have led to those decisions creating complex ingrained patterns and ways of working that aren&apos;t conducive to the modern practices of the world in which we operate now.</p><p>We have a reasonably sized organisation of ~120 engineers split over ~15 teams. Despite the majority of these having been with the company for less than 5 years, the teams follow processes defined over 10 years ago, if not more. We are using DSDM and time-boxed delivery windows - waterfall, despite DSDM claiming to be Agile - and have recently moved from a quarter-by-quarter release cycle to a bi-weekly one. That is where we stand now&#x2014;a slow release cadence and many historical processes.</p><h2 id="where-do-we-want-to-be">Where do we want to be?</h2><p>There will be no major surprises here; I don&apos;t think. We want to reach a point where we deliver value continuously. Engineers and Teams should deliver things daily in small increments of value. We want to be responsive to the needs* of our customers and be able to adjust our direction in reaction to changes in the market or in the broader regulations that are a part of our industry. We want to be agile.</p><blockquote>* Notice that I say &quot;needs&quot; here and not wants. This includes an adaption to how our product org assesses and prioritises ideas. Hence, we deliver the work with the highest positive impact on our customers, even if it is not what they shout the loudest about. Proactive, not reactive.</blockquote><h2 id="how-will-we-get-there">How will we get there?</h2><p>Now that&apos;s the kicker, isn&apos;t it? Figuring out how to get from A to B. We haven&apos;t yet gained full clarity on some parts of this plan. As with anything, we know there are known unknowns and likely unknown unknowns to face along the way.</p><p>It starts with boundaries. We are sandwiching this problem at first. We have gone to the upper bound and got the broader buy-in on why we want to go through this transformation, and we have set the goal to follow scrum in all product teams as our first step away from DSDM by the end of 2023. Then we have gone to the boots on the ground. We have hired a Head of Agile Transformation and Agile Coaches to help the teams transition into a new way of working. They are, in turn, partnering with each product delivery team 1 by 1 (or 2 by 2, 3 by 3 etc., as we hire more coaches) to help them transition into more Agile ways of thinking and working.</p><p>We&apos;re now focusing our attention on the filling of this sandwich. Beginning with determining what we will consider success and then how to measure the indicators of this success. I don&apos;t think anyone here will be shocked that we are starting by utilising the DORA metrics. These will begin to form/play into KPIs we will use to help drive our transformation and demonstrate our progress. No, we are not about to set ourselves up to fall foul of Goodhart&apos;s law. We&apos;re not setting goals on the number of daily deploys or specific numbers. Our goals will be focused on reducing the time to production for work and increasing the number of deployments per time period (2 weeks at first, then weeks, then days) measured in a % of our starting baselines.</p><h2 id="thats-not-a-very-big-sandwich">That&apos;s not a very big sandwich!</h2><p>No, it&apos;s not. But that is deliberate. The biggest mistake and cause of failure in these types of projects is doing too much too quickly. We could turn around and tell all the teams that tomorrow they need to use scrum and that we have set goals to reduce how long it takes to get work into production. But if we did that, the teams would struggle to operate as they try to work out scrum without support. The quality will drop as they feel the pressure to deliver faster while trying to change their ways of working. And ultimately, the effort spent on getting business buy-in is wasted as the project is pulled because the state of things is worse, not better than before.</p><p>So in the spirit of Agile. We are starting by delivering the smallest slices of value we can in our transformation journey. We are gathering data, assessing our options, what delivers the next most valuable change, and then going around again. After all, it would be heretical to deliver an Agile transformation in a waterfall approach, wouldn&apos;t it?</p><hr><h2 id="whats-next">What&apos;s next?</h2><p>I can&apos;t tell you exactly what will be next up for us in our transformation. Or when the next learning will come. However, I can talk a bit about one topic - Team Structures. So expect another post in the next week or two talking about Team Topologies and how your system design impacts your teams and your teams impact your system design.</p>]]></content:encoded></item><item><title><![CDATA[Measuring the Productivity of Engineering Teams ... successfully!]]></title><description><![CDATA[It's a common request for many managers. "Please improve the team's level of productivity." Sounds simple enough, right? The simple answer is no. No, it is not simple in the slightest.]]></description><link>https://www.deskoftom.co.uk/measuring-productivity-of-engineering-teams-successfully/</link><guid isPermaLink="false">63dba3a20a5a50003d6d8577</guid><category><![CDATA[Productivity]]></category><category><![CDATA[Leadership]]></category><category><![CDATA[Software Engineering]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Thu, 02 Feb 2023 11:57:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1521168186168-0af572a9256e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDIyfHxNZWFzdXJlfGVufDB8fHx8MTY3NTMzODczOA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1521168186168-0af572a9256e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDIyfHxNZWFzdXJlfGVufDB8fHx8MTY3NTMzODczOA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Measuring the Productivity of Engineering Teams ... successfully!"><p>It&apos;s a common request for many managers. &quot;Please improve the team&apos;s level of productivity.&quot; Sounds simple enough, right? The simple answer is no. No, it is not simple in the slightest. In this article, I will explain productivity and give you some best practice advice for measuring what you can. Let&apos;s begin ...</p><h2 id="what-is-productivity">What is productivity?</h2><p>Productivity. You will probably hear a few variations on what it &quot;means&quot; regarding software engineering. But its literal definition can be defined like this.</p><blockquote>The effectiveness of effort as measured in terms of the rate of output per unit of input.</blockquote><p>In layman&apos;s terms, it is the ratio of the number of things in compared to the number of things out. The more you get out for the same amount, the more productive you (or your system) are. It should be simple to measure an engineering team&apos;s productivity. The amount of work produced is divided by the number of people it takes to produce it. But hold on a second, how are you measuring the work produced (output)? And what are we measuring against (input)?</p><h2 id="what-is-our-output">What is our output?</h2><p>Many of you have already started thinking about story points, tickets closed, and other seemingly obvious choices. But let&apos;s step back and think about it for a moment. What are we really trying to measure? We want to measure business impact. I&apos;m sure none of you would put your hands up to tell me you churn out any old thing. You create work items to deliver features which have been determined to provide some value to the customer. But now it gets complicated. How do we measure business impact? How do we correlate new or increased business revenue with a particular feature released on a particular day, built by a particular team? Put simply. You can&apos;t. We need a proxy measure. We will return to this in a moment, but before we do, I want to talk about our Input, arguably the simpler of the two.</p><h2 id="what-is-our-input">What is our input?</h2><p>We are going to find a suitable proxy for our output. But before that becomes useful. What is our input going to be? A person? A unit of time? Most people default to using both and picking the number of hours worked by individuals as their input. Seems like an obvious choice. But it&apos;s wrong for a few reasons;</p><ol><li>Our productivity is now relative to single people. This might be manageable for 6-8 people, but imagine doing this for a 200+ strong org!</li><li>A very simple one, people don&apos;t like it. Start tracking everything they do if you want a surefire way to piss off your employees. Big brother much.</li><li>How do you account for holidays? Half days? Illness? Not only that but how do you measure what hours count? Meetings? Context switches? Coffee breaks? It&apos;s already gotten messy.</li><li>You are inadvertently penalising some of the most important people on your team. The &quot;glue&quot;. Those people spend most of their day pairing, passing on knowledge, unblocking others, reviewing code, and attending strategy sessions. Your most senior engineers are going to look like your least productive.</li></ol><p>I&apos;m sure you get the point. But you were right to think about people and time as a single input. You just zoomed in too far. Software engineering is a team sport. You need to measure teams. Measuring teams remove the considerations about holidays, how days are structured, or what type of work individuals do. And instead of hours, you want to measure in days. How much does 1 team produce in 1 day?</p><p>The only time you might consider &quot;people&quot; in this equation is if you&apos;re micro-optimising and want to compare the productivity rates of teams based on team size. How does a team of 5 compare to a team of 10? for example. But that is an edge case, and you still measure the team; you compare relative output ratios against total team sizes to see if there is a trend.</p><h2 id="picking-your-output-proxy">Picking your output proxy</h2><p>Now that&apos;s out of the way, we are back to the original thoughts about our output. We know we aren&apos;t measuring our actual output (value created) because we can&apos;t, which circles back to measuring the number of work items delivered. Before you run off and start creating a dashboard to track work items completed over time, remember a golden rule &quot;You get what you measure&quot;. Or, to quote Goodhart&apos;s law</p><blockquote>&quot;When a measure becomes a target, it ceases to be a good measure.&quot;</blockquote><p>And to repeat what I said earlier, &quot;I&apos;m sure none of you would put your hands up to tell me you churn out any old thing.&quot; And if we measure work items delivered, I guarantee that is what you will get, more random tickets in your system like: &quot;Email Bob about question&quot; and &quot;Write documentation&quot;, and your work items will be made hyper granular &quot;Create File&quot;, &quot;Add code to file&quot;, &quot;Create Test&quot;, &quot;Write Test&quot;, &quot;Run Tests&quot; etc. etc. Ok, maybe that is a tad extreme, but you get the point; if you tell people that tickets done is the thing you track and that you want them to get more tickets done, they&apos;ll do it by creating more tickets, NOT by doing more work.</p><h2 id="so-what-the-hell-do-i-measure">So, what the hell do I measure?</h2><p>The answer is that you don&apos;t measure things in isolation. You measure relationships, and you measure trends. You measure instead things like the number of work items done in relation to the number of software releases, and the number of software releases in relation to the number of bugs/errors found etc. This way, you can see things like, we are delivering more tickets, but that isn&apos;t impacting releases (are we doing too much toil?), we are releasing the same, but our error count is going up (why is our quality dropping?).</p><p>This is where there are well-established best practices to help you out. The big one, and the first one I will mention, is the DORA metrics. DORA stands for DevOps Research and Assessment (Group), which is part of the Google ecosystem of companies. They used extensive research to determine a set of measurements that can be reliably used to determine a software company&apos;s performance (and relative success).</p><h2 id="the-dora-metrics">The DORA metrics</h2><p>I won&apos;t go into much detail here, as that isn&apos;t the article&apos;s point. However, I will summarise the metrics you will measure;</p><ul><li><strong>Deployment Frequency:</strong> How often you make successful software releases to production.</li><li><strong>Lead Time for Change:</strong> How long it takes to get from committing a code change to that code change being in production.</li><li><strong>Change Failure Rate:</strong> How often a deployment fails or a software change results in a failure in production.</li><li><strong>Mean Time to Recovery:</strong> How long it takes on average between an interruption from a deployment or system failure for the system to fully recover.</li></ul><p>You can use these as an excellent proxy measure for your team&apos;s productivity. You want to see a high deployment frequency, a low lead time for a change, a low failure rate, and a fast mean time to recover. You will measure the impact of changes by watching the relationships with these measures over time.</p><h2 id="awesome-thanks">Awesome, thanks!</h2><p>So that is the bare bones, a simple way to measure productivity. But before you run off in celebration, there is more. Just utilising DORA alone leaves a lot of opportunity on the table. Let me take you into SPACE &#x1F680;</p><h2 id="i-always-wanted-to-be-an-astronaut">I always wanted to be an Astronaut</h2><p>SPACE ... the great beyond ... at least the great beyond of DORA. DORA is fantastic, but it completely ignores a considerable portion of how we perceive and measure productivity. If I casually drop in the word &quot;flow&quot;, I&apos;m sure you all know what I mean. That state of deep focus where the time goes by, and you solve your biggest problems and challenges, and it just feels easy. That has an obvious link to productivity, but how satisfied you feel also correlates with productivity (<a href="https://link.springer.com/chapter/10.1007/978-1-4842-4221-6_10?ref=deskoftom.co.uk">link</a>). And this is where the SPACE framework comes into play.</p><h2 id="welcome-to-space-camp-cadet">Welcome to SPACE camp cadet!</h2><p>So what is the SPACE framework? SPACE is, unsurprisingly, an acronym for the 5 different metrics you are looking to measure.</p><p><strong>(S) - Satisfaction &amp; Well-being:</strong><br>How fulfilled the engineers feel with their tools, team, culture, and day-to-day work; How happy and healthy they feel and how their work impacts them.<br><strong>&#x200C;(P) - Performance:</strong><br>An outcome of a system or process.<br><strong>&#x200C;(A) - Activity:</strong><br>The number of actions or outputs completed whilst performing work.<br><strong>&#x200C;(C) - Communication &amp; Collaboration:</strong><br>How individuals and teams communicate and work together.<br><strong>&#x200C;(E) - Efficiency &amp; Flow:</strong><br>The ability to complete or progress on work with minimal interruption or delay caused by people or systems.</p><p>These can seem like very &quot;woolly&quot; or &quot;grey&quot; areas to try and measure, and they are, but it&apos;s such a significant topic that it will be better served by a follow-up post of its own.</p><p>For now, here are a few simple examples of measurements, all at a team level;<br><strong>(S) -</strong> Averaged Developer Satisfactions Scores (eNPS)<br><strong>(P) -</strong> Change Failure Rates<br><strong>(A) -</strong> Deployment Frequency<br><strong>(C) - &#x200C;</strong> PR Review Times<br><strong>(E) -</strong> Lead time for Change</p><h2 id="conclusion">Conclusion</h2><p>So there we have it. Measuring the productivity of development teams is hard. We can&apos;t measure our work&apos;s true impact (outcome) and must be careful how we proxy it. But by using DORA and SPACE, we can have some good insight into how productive our teams feel and how efficiently they can operate. Remember, measure the trends over time, and DON&apos;T MEASURE THE PERSON!</p>]]></content:encoded></item><item><title><![CDATA[Should I stay or should I go? - Culture is king. The king is dead.]]></title><description><![CDATA[Culture ... that hard to define, difficult thing to pin down. Yet it plays a critical part in any job at any company. So what do you do when you find yourself in a culture that doesn't work for you?]]></description><link>https://www.deskoftom.co.uk/should-i-stay-or-should-i-go/</link><guid isPermaLink="false">6397a91b0c5487004d1c3b64</guid><category><![CDATA[Culture]]></category><category><![CDATA[Leadership]]></category><category><![CDATA[Career]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Tue, 03 Jan 2023 20:31:30 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1617440168937-c6497eaa8db5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDI1fHxjb25mdXNlZHxlbnwwfHx8fDE2NzA4ODM3NTE&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1617440168937-c6497eaa8db5?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDI1fHxjb25mdXNlZHxlbnwwfHx8fDE2NzA4ODM3NTE&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Should I stay or should I go? - Culture is king. The king is dead."><p>This is what happened to me, and this is my honest account. Unlike usual, this article will be more based on my experience and opinion than on offering concrete advice. So for those who read my work purely for its educational value, this one might not be for you.</p><h2 id="setting-the-scene">Setting the Scene</h2><p>Let me set the scene. I have been through redundancy and have spent a long time looking for the next right role. I&apos;ve cut a substantial amount off my wage (over &#xA3;30K), and I&apos;ve already dropped my expectations in keeping the same levels of seniority (I&apos;m a senior technology leader). I&apos;ve widened my bucket as far as I can afford to. And I&apos;m getting desperate. My run-way of savings is at an end. Things are bleak ... then tada &#x1F389; A company I had applied to at the start of my redundancy (3 months ago) finally got back to me. Everything is looking up again. They moved quickly; they kept the interviews short, 2 of them 1.5 hours in total. They made an offer the same evening after the final interview and sent the contract through at 22:00.</p><h2 id="did-you-see-it">Did you see it?</h2><p>Now, there were already a few warning flags that I completely ignored because of my situation. Did you spot them? It took this company 3 months to respond! There are clearly some issues happening within this company if a 3-month lead time is an acceptable thing. Then the sheer pace of it all, only 1.5 hours, all done, meeting just 3 people for a senior leadership position? That&apos;s not very thorough; they were as desperate as me I think. I had mentioned that I wanted to move quickly as I was in the final stages of another company, but still, that&apos;s obscenely fast. If that wasn&apos;t enough of a flag, getting the contract sent out at 22:00! That&apos;s not normal, not a bad thing just on it&apos;s own, but given the rest of it, its a flag they&apos;re desperate for a bum on that seat. This role was sold to me as one with autonomy in a company that values technology, values people, and has a clear mission. I, also in a hurry (I&apos;m not an innocent party here), didn&apos;t ask thorough questions, took what they said at face value, and even flatly ignored some negative Glassdoor reviews about the things they were claiming to be the opposite. Doh! Rookie move.</p><h2 id="once-on-the-inside">Once on the inside</h2><p>Once I had accepted and started - which wasn&apos;t a smooth, easy thing, but moaning about onboarding is a different topic to this - what was it like?</p><p>No prizes for guessing here. It was chaotic, not quite world on fire, but not far off. This should have been obvious given the warning flags I ignored during the hiring process. So I was thrown in with no clear direction, no product ownership anywhere in sight, no data to speak of to make decisions, and a new set of priorities every week. Now ... this company was/is still young, so the idea of many people wearing many hats and shifting priorities is to be expected. After all, that is the nature of a start-up. However, the difference here, in my experience, is normally a start-up has a clear vision of where it wants to go and what it wants to achieve. It has some measurements to determine what aspect of its product is working and what isn&apos;t. That is what drives the changes in priority and direction, data. All of that was absent. This was all guns blazing doing things prioritised by who can shout the loudest. No body really knew why they were doing what they were doing. If any of you have read the Phoenix Project ... you get the idea (and if you haven&apos;t, you should). It&apos;s not quite as bad as it was at Parts Unlimited, but there was a clear familiarity.</p><p>Now the naive part of me thought, &quot;Great! Chaos! No product ownership. I can have a huge impact here and start to right this ship. Product, process and people are my thing!&quot; ... Wrong! The company can&apos;t or won&apos;t allow the fast adoption and trial of tools (budgets, regulation, politics? Not sure I never worked that out). So that&apos;s my plan scuppered already. I have no data, and I can&apos;t get access to the tools needed to gather that data.</p><h2 id="the-ol-bait-and-switch">The ol&apos; bait and switch</h2><p>The next trap I had seemingly fallen into was the old bait and switch. I had been brought in with the promise of one thing and had it replaced with something else before my feet had even touched the ground. It wasn&apos;t all bad news; my manager* was very wary of the same problems and the fact everyone was running around like a headless chicken. They arranged an &quot;offsite&quot; to talk over priorities. So at least, we should be able to start to see what needs to be done now. In the interim, I stepped into a new role as backlog administrator and project planner (Interim Product Owner) of sorts for some the established teams. After all this, we identified a key problem, recognised it as a priority, and tied it back into the business. Onwards and upwards?</p><p>* Credit where credit is due. My manager was and is badass at what they do.</p><h2 id="yeah-but-no-but">Yeah, but no, but</h2><p>We have a priority; we have an agreed direction. We started to create a backlog of work; we created a hiring plan. We needed an SRE team. I wasn&apos;t hired to lead SRE; I have no experience with SRE hands-on. But you know what, I don&apos;t mind a challenge. Then it&apos;s casually dropped in; we can&apos;t call them that, and we can&apos;t position it to the business as that. Ahh, politics, how we love you. So I set about resourcing, reaching out to my network and so on. We even start to interview for the roles. Does anyone want to guess what happened next?</p><h2 id="deje-vu">Deje Vu</h2><p>Before that entire initiative ever gets too far, priorities shift again. And we are back to the original remit. You know what? It&apos;s been a massive waste of time, but at least I&apos;m being told to focus on what I was initially hired to do. Great, time to crack on. By this point, I&apos;m a bit fed up; I&apos;m tired of a lack of direction in the business; I&apos;m tired of the politics and how it seems to be grinding things to a halt, I&apos;m starting to spot other red flags in senior leadership. And then something happened. Another recent hire, a senior leader, far more experienced than me and more familiar with the industry and regulated spaces, announces they&apos;re leaving because they&apos;re just going to clash heads with the people they need to work with. They&apos;d been there for about 4 weeks. Now I&apos;m starting to question what I&apos;m doing. Should I stay? Or should I go? (Spoiler I should have gone).</p><h2 id="the-machine-the-cog-and-the-hamster">The machine the cog and the hamster</h2><p>Not long after this, I started to get a better understanding of who is who and how things are run. And this is where I start to see other issues. This company is supposed to be remote first. Yet every day or two, I need to remind people of this. Not just other engineers. I&apos;m reminding HR, Marketing, and other Senior leaders. There is a clear bias toward office attendance, and there is a clear clique and &quot;inner circle&quot; of those who attend the office frequently and those that don&apos;t. There is also a problem with on-call, and the answer wasn&apos;t to hire a team (we did need that SRE team) whose role was to take on that responsibility as first-line. Nope, the answer was moan about a lack of &quot;commitment&quot;, debate if to pay people more than the base amount already on offer for on call ... oh and to make it mandatory for everyone. Sod your work-life balance, make it mandatory and part of the career progression framework for engineers ... Hi Elon! Nice to meet you. That&apos;s just a slice of the pie, but enough to show a drive towards the much hated &quot;hardcore bro culture&quot; often associated with software engineering. </p><h2 id="hold-yourself-accountable">Hold yourself accountable!</h2><p>Now, I&apos;m not going to pretend that I&apos;m innocent here. Ignoring the fact that I missed a lot of cultural red flags before starting. I also then continued to try and stick around &quot;to add another string to my bow&quot; whilst going against my instincts. Whilst in the role, subsequently, I didn&apos;t perform to my best. I couldn&apos;t get my head into it. I couldn&apos;t get behind the product. I couldn&apos;t get behind the leadership. I was not motivated. I was failing to do things I would expect of myself as a leader. I could have tried to win over hearts and minds, and be more proactive with my dissenting opinion. I could have gathered data, given presentations, driven my own initiatives. But I didn&apos;t. They&apos;re things I have done in the past. But I just didn&apos;t have the motivation. I wasn&apos;t bought in. I was trying to fake it till I made it. I just didn&apos;t fit in, and I knew it.</p><p>Don&apos;t get me wrong; I&apos;m not suggesting I was lazy. I put a lot of effort in to the things I was doing. Into hiring, reaching out to my network. I put a lot of effort into considering and researching different methodologies, processes, and schools of thought in improving developer experience. Ultimately they needed me to show I was doing something by creating presentations on roadmaps (which I hate to do without data and a clear purpose), not just doing things behind the scenes, and they needed me to be more aligned/involved with the rest of the leadership team. But I just had no desire to become a part of that circle, it was an echo chamber that knew what and who it was, and was happy with that. There is disagree and commit, and then there is breaking your own values. I could have done some of these things they needed of me. I could maybe of tried harder to find a way to fit in without doing things I disagreed with. Maybe you could accuse me of being closed minded, and being closed to their view, after all, they have driven the company to profitability. But this the whole point of this article. Culture, or the perceived culture, changes everything. Being in the same situation in a company where I felt a part of it, where I felt aligned to where they wanted to go (even if they&apos;re not there yet), this would be a very different story. In fact it has been a different story in the past. I&apos;m sure it will be again.</p><h2 id="the-lesson">The lesson!</h2><p>So the simple lesson here is. Please don&apos;t hang around. There is no shame in admitting when a culture isn&apos;t right for you. Don&apos;t work for or in a culture that doesn&apos;t align with your values. You can twist any company value to align with your own. The question is, what does that value mean in reality? Are they living it? Does it align with your version? If the answer is no, get out. I stayed, made myself stressed and unhappy, under-performed, and ultimately ended up agreeing to leave during probation. Nobody won in that scenario.</p><h2 id="following-on">Following on</h2><p>To add some additional information to this, and to show it&apos;s not a hit piece (why it&apos;s all name-less) or just a bitter man&apos;s opinion. I have spoken to multiple people at the company to get their take. Some of these people have been with the company for years, and some for less time than I was. Some of them plan to leave, others plan to stay. But here are some key takeaways from people who also probably don&apos;t fit the culture and how it feels to them;</p><ul><li>Ignoring toxic behaviour and sweeping it under the carpet when an individual has a perceived high value.</li><li>A lack of feedback.</li><li>Using an individual&#x2019;s weaknesses against them to prevent them from succeeding.</li><li>Setting individuals up to fail by providing no feedback and not setting objectives.</li><li>Recruiting without due diligence and firing people early into the job.</li><li>Not displaying their own company values.</li><li>Being a remote-first organisation but taking a leaf out of Elon Musks&apos; book. (This wasn&apos;t my quote, I promise).</li></ul><p>This shows lots of people are seemingly willing to work for companies where they don&apos;t fit the culture. I have no doubt some people will love it and thrive their, there are some very competent leaders in the business (my manager was one of them). But when you don&apos;t feel like the culture is right, that you feel out of place, and you think &quot;Should I stay or should I go?&quot;, the answer is almost always universally, go! You only get to live your life once, and you spend a lot of your adult life working, so don&apos;t make yourself unhappy, ind somewhere where you feel at home and move on. There is no shame in it!</p>]]></content:encoded></item><item><title><![CDATA[Please don't talk to me like that! – How to communicate effectively with your team.]]></title><description><![CDATA[Communication is essential for success. But what do we mean by "effective communication?" Well, simply put, it means communicating in a way that the other person understands. This may seem like a simple task, but it can be difficult to do.]]></description><link>https://www.deskoftom.co.uk/please-dont-talk-to-me-like-that-how-to-communicate-effectively-with-your-team/</link><guid isPermaLink="false">638616998d689f003d8b0741</guid><category><![CDATA[Communication]]></category><category><![CDATA[Leadership]]></category><category><![CDATA[Culture]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Tue, 29 Nov 2022 14:44:54 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1557425493-6f90ae4659fc?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDIyfHxUYWxraW5nfGVufDB8fHx8MTY2OTczMjA5Nw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1557425493-6f90ae4659fc?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDIyfHxUYWxraW5nfGVufDB8fHx8MTY2OTczMjA5Nw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Please don&apos;t talk to me like that! &#x2013; How to communicate effectively with your team."><p>When you don&apos;t understand how different people prefer to communicate, effective communication is almost impossible. In this article, we will explore different ways of communicating with your team and discuss who should be responsible for ensuring that the message is understood.</p><h2 id="who-is-responsible-for-ensuring-the-message-is-understood">Who is responsible for ensuring the message is understood?</h2><p>The whole point of communicating with someone, no matter how you do it, is to convey a message of some kind to that person. We all understand that, we have done it all our lives, even before we could talk. So who is the onus on to ensure that message is understood correctly, the person doing the communicating, or the person receiving the communication?</p><p>I don&apos;t think there will be too much shock or uproar by me just stating it&apos;s the person doing the communicating that is responsible for ensuring the message is understood. But that leads me straight to the next question ... why do we not care?</p><h2 id="why-dont-we-care-if-people-understand-us">Why don&apos;t we care if people understand us?</h2><p>This might seem like a flippant question. But it honestly seems to be true. You could easily argue (as you&apos;ll see in a moment) that I don&apos;t right now. We all seem to understand that it is on us to convey our message in a way that is understood. Yet we all seem too default to defining that as one thing. It might be, speaking clearly on a call, writing a clear message, or writing a clear email. But as we all know, not everyone is the same. You&apos;ll know from some of my other articles, I&apos;m a big fan of Myers-Briggs personality types. And you will know how they impact different learning styles from my article on <a href="https://www.deskoftom.co.uk/watch-out-for-the-screaming-baby-how-to-use-myers-briggs-personality-types-to-spot-employee-stress/">spotting stressed employees</a>. So it&apos;s not unreasonable to also assume that different people on your team are going to need to receive information in different ways.</p><h2 id="getting-a-lay-of-the-land">Getting a lay of the land!</h2><p>As a manager, we are naturally going to have a bias in our default ways of communicating. For me as an Introverted Thinker, I like to give and receive information in written form. So I will likely default to sending you a message in Slack/Teams. And if I don&apos;t use an Instant Message, it&apos;s probably going to be an email. But that is my bias. I know all too well that my wife&apos;s preferred method of receiving information as an Extroverted Feeler is verbal. So if we were working together, she would much prefer to have a chat about something on a call or in person than to get a written message.</p><p>Knowing this, the solution to ensuring you communicate the right way with someone is pretty simple. Ask them.</p><p>In your next 1:1, if you don&apos;t already know, ask your report how they prefer to receive information from you. Do they want a quick direct message, a lengthy email, a phone call, a video chat, or some other method of communication? Take note of it, and try to use that method when you need to convey a message.</p><h2 id="hold-up-its-not-that-simple">Hold up! It&apos;s not that simple ...</h2><p>What if I need a paper trail for HR? What if I&apos;m communicating with a team of 20 people? You can&apos;t create and give a custom message to every single recipient!</p><p>And I wouldn&apos;t expect you to. For one, that is very likely to result in people having different understandings of the message. And that is a very bad thing. This is where you need to start to think more strategically. How important is this message? How complicated is the topic at hand? In most cases, you can convey the message in a way that gives everyone the best chance of understanding. So here is my framework for choosing how to send out a communication;</p><h2 id="picking-the-right-ways-to-communicate">Picking the right ways to communicate.</h2><h3 id="how-many-people-am-i-communicating-with"><strong>How many people am I communicating with?</strong></h3><p>First off, am I communicating with one person, or with multiple people?</p><h4 id="multiple-people"><strong>Multiple People.</strong></h4><p>When talking with multiple people, to ensure it&apos;s understood by everyone you should use all the tools at your disposal.</p><ol><li>Send out a group message letting people know you&apos;re about to send an email and include any resources for them on the subject that are available.</li><li>Send out an email inviting them to attend a meeting, and re-including the same resource links as the message.</li><li>In the calendar invite include a summary of the meeting purpose, the agenda, desired outcomes, and again, links to the resources.</li><li>Have the meeting, take notes (or assign someone else to) and record the session.</li><li>Afterwards, put the summary notes and recording into a document in a shared space (Wikis are great for this)</li><li>Send out an email and group message to thank people for attending, summarise the agreed actions (or decision(s) taken) and a link to the document containing the notes and/or the recording.</li></ol><p>Congratulations, you have thoroughly covered all methods of communication, and have a solid audit trail of decisions made and why.</p><h4 id="a-single-person"><strong>A Single Person.</strong></h4><p>Firstly, does the type of message need an audit trail (HR/Legal reasons etc)? Secondly, how does the recipient like to receive information?</p><p><strong>An audit Trail is needed.</strong></p><p><em>Prefers written comms:</em></p><ol><li>Send an email (which is best for audit reasons)</li><li>Send a direct message summarising the email letting them know it has been sent. </li><li>Try to converse via email.</li></ol><p><em>Prefers verbal comms:</em></p><ol><li>Send an email inviting them to a meeting, summarising the purpose of the meeting.</li><li>Record the meeting (for audit reasons)</li></ol><p><strong>No audit needed.</strong></p><p><em>Prefers written comms:</em></p><ol><li>Send them the message by whatever written communication channel they prefer.</li></ol><p><em>Prefers verbal comms:</em></p><ol><li>Give them a call, or arrange a meeting however they prefer.</li></ol><p>It might seem like a lot of effort to go too. But trust me, it saves far more time going to these efforts than it does re-having meetings to correct misunderstandings, fixing legal problems because you don&apos;t have an audit trail, or correcting the bad outcomes of making poor decisions.</p><p>As the saying states &quot;Go slow, to go fast&quot;.</p><p>Now I guess I should go and turn this into an audio recording to take my own medicine right? ... &#x1F914;</p>]]></content:encoded></item><item><title><![CDATA[Watch Out for the “Screaming Baby”: How to Use Myers-Briggs Personality Types to Spot Employee Stress]]></title><description><![CDATA[Do you have a "screaming baby" in your office? By that, I mean an employee under a lot of stress and not coping well. It's important to be able to identify when an employee is stressed so that you can help them before things get too bad.]]></description><link>https://www.deskoftom.co.uk/watch-out-for-the-screaming-baby-how-to-use-myers-briggs-personality-types-to-spot-employee-stress/</link><guid isPermaLink="false">637b81d0559b1d003dea87c2</guid><category><![CDATA[Leadership]]></category><category><![CDATA[Culture]]></category><category><![CDATA[Communication]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Mon, 21 Nov 2022 13:50:55 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1527631120902-378417754324?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDczfHxDcnlpbmclMjBiYWJ5fGVufDB8fHx8MTY2OTAzODUzMg&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<h2 id="what-is-the-myers-briggs-model">What is the Myers-Briggs model?</h2><img src="https://images.unsplash.com/photo-1527631120902-378417754324?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDczfHxDcnlpbmclMjBiYWJ5fGVufDB8fHx8MTY2OTAzODUzMg&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Watch Out for the &#x201C;Screaming Baby&#x201D;: How to Use Myers-Briggs Personality Types to Spot Employee Stress"><p>I&apos;m sure many of you have already heard or come across the Myers-Briggs model. It&apos;s a simple model of patterns and biases in human cognitive processes that help identify and group people into different types of personality. I like using the <a href="https://www.16personalities.com/free-personality-test/cfa643c98a5b4?ref=deskoftom.co.uk">16 Personalities platform</a> and its expansion upon the traditional Myers-Briggs model. However, the basis remains the same. The model will explore and identify different base traits of your personality;</p><ol><li>How you interact with your surroundings. Are you more introverted or extroverted?</li><li>How you process information and see the world (how you learn). Are you more observant or intuitive?</li><li>How you make decisions. Are you more of a thinker or a feeler?</li><li>How you plan and respond to change. Are you more organised or more flexible?</li></ol><p>From these base traits, it&apos;s possible to categorise yourself as fitting most into one personality type. This isn&apos;t to say you are 100% one thing, all humans are flexible and may show traits of many different types of personality. This will just help you identify behaviours that you are &quot;most likely&quot; to exhibit.</p><h2 id="what-does-your-personality-type-have-to-do-with-stress">What does your personality type have to do with stress?</h2><p>Naturally, you are probably now wondering what your personality type has to do with stress. And even more importantly, how your reports&apos; personalities are going to help you identify stress early. Luckily the idea is pretty straightforward. From the above model we can identify two key aspects of being human;</p><ol><li>How we learn</li><li>How we make decisions</li></ol><p>We also need two more key things to be a well-rounded human;</p><ol><li>The ability to get in touch with our &quot;inner self&quot; (An Introverted part of us)</li><li>The ability to express and receive feedback from the real world (An extroverted part of us)</li></ol><p>Using the traits listed above and our personality type, we can identify the four main cognitive functions that will influence our behaviour.</p><h2 id="the-four-horsemen-of-behaviour">The four horsemen of behaviour!</h2><p>The most common way to understand these four cognitive functions is to imagine a car. In this car, there are 4 people. The first person is the driver. This is the person that is in control of where the car goes. The second person is the co-pilot. This person supports the first person and helps them decide where to go. The third person is the passenger. This person is just along for the ride and has no special purpose. The final person is the baby. This person is silent until something goes wrong, then they start screaming, and both the driver and co-pilot become distracted and the car no longer does or goes where expected.</p><p>It&apos;s the screaming baby you need to learn to identify, and to identify early, to help reduce your reports&apos; stress levels.</p><p>I&apos;ll use myself here to help paint a more concrete picture. I&apos;m an INTP personality type. This means that I&apos;m naturally more introverted than extroverted, I rely more on my intuition (gut feelings about what will happen) than my observation (what is happening right now), I&apos;m more of a thinker than a feeler (I&apos;ll try to solve problems rather than acknowledge feelings), and I&apos;m more of a prospector (improviser) than a judge (organiser). So let&apos;s dive in;</p><h2 id="figuring-out-your-two-favourite-functions">Figuring out your two &quot;favourite&quot; functions</h2><p>Going back to our aspects of being human. We can see from my personality type that my preferred way of learning is via Intuition (N), and my preferred way of making decisions is via Thinking (T). Each personality type will then naturally have a preference as to whether they prefer learning or making decisions. Depending on yours, this will impact your Driver and Co-pilot functions. If your driver is learning, your co-pilot is automatically decision-making, and vice-versa. The way you learn (Intuitive, or Observant) is called your &quot;Perceiving&quot; function. This is how other people perceive your behaviour. So by extension your learning preference is an extroverted function.</p><p>This means I have &quot;extroverted intuition&quot;. Again using the aspects of being human from above, this only completed one-half of me, meaning by extension, my means of making a decision, is Introverted Thinking.</p><h3 id="whos-driving">Who&apos;s Driving?</h3><p>To determine which of these is your driver, and which is your co-pilot, you need to look at the first letter of your result, whether you are more of an extrovert or an introvert. I&apos;m an <strong>I</strong>NTP, which makes my Introverted Thinking my driver. And by proxy, Extroverted Intuition my co-pilot.</p><h2 id="how-does-this-play-out-in-the-real-world">How does this play out in the real world?</h2><p>Before we look at the passenger and baby, let me quickly explain what that means in the real world. In essence, my primary function is introverted thinking, this means I&apos;ll get most of my &quot;work&quot; done in isolation, by thinking over problems and solutions in my head. Once I have reached a decision you&apos;ll see me express it as a statement of fact that I believe this is the best way to go. I probably won&apos;t have any data to hand, and I&apos;ll probably use phrases like &quot;I think this is the best way to go&quot;. To demonstrate the opposite, an Extroverted Thinker would likely talk through every idea and solution out loud with you and others, but would then make the decision internally, and proceed to take action without ever letting any of you know.</p><h2 id="the-passenger-and-the-baby">The passenger and the baby</h2><p>So how do we determine who is the passenger, and who is the baby? In our car, the passenger sits behind the co-pilot, and the baby sits behind the driver. The reason for this, they&apos;re the exact opposites of the people in front of them. So continuing to use me as an example, my passenger is Introverted Observation, and my baby is Extroverted Feeling.</p><h2 id="spotting-stress-by-listening-for-the-crying-baby">Spotting stress by listening for the crying baby.</h2><p>Spotting stress in your reports when you have figured out their personality type (it&apos;s super easy if you ask them to take the test &#x1F61C;) becomes quite straightforward.</p><p>To use me as an example; Someone who ordinarily isn&apos;t very chatty and vocal, and is usually very logical and reasoned. When this person starts to become stressed, the baby starts to cry, and that Extroverted Feeling starts to come out. At first, it might be a snarky comment or a usually unvoiced grumble of decent, but after a while, if left unattended, it can become a full-on tirade of highly emotive outbursts, that may seemingly come from nowhere.</p><p>Luckily for a manager, I&apos;m an easier type to deal with, because as I become stressed, I become more vocal and more emotive. That&apos;s an easy one to spot. But what about someone who is normally an Extroverted Feeler? They&apos;ll start to become quieter and more logical, which can be hard to spot and is certainly easier to confuse with someone who is just working hard to solve a problem. Or how about even someone who is ordinarily an Extroverted Perceiver, someone who is vocal and flexible? How do you spot when they become less vocal and are all of a sudden planning everything to within an inch of its life, and possibly even to the point of analysis paralysis, but without ever telling a soul?</p><p>It&apos;s not always obvious when things are bordering on the crying baby, and when someone is utilising an often under-used part of their toolkit. After all, no one is 100% one thing or the other. But what using the Myers-Briggs and the four functions model does, is it allows you to better understand your reports, and what is &quot;normal&quot; behaviour for them. Using that tool kit you can sport earlier when someone is behaving out of character and showing signs of stress, meaning you can reach out, and speak to them. &quot;Hey, you&apos;re being quieter than usual at the moment, are you ok?&quot;, or &quot;Hey, you seemed to get more visibly annoyed during that meeting than you would normally, is everything ok?&quot;. It&apos;s never a diagnosis, it&apos;s just a conversation starter.</p><p>Now go forth and reduce your teams stress! Good luck.</p>]]></content:encoded></item><item><title><![CDATA[Architecting Teams: Designing your team API]]></title><description><![CDATA[As your company grows, you will need to start architecting your teams. This means defining the boundaries of what each team is responsible for and designing an "API" for how other teams should interact with them.]]></description><link>https://www.deskoftom.co.uk/architecting-teams-designing-your-team-api/</link><guid isPermaLink="false">636cfe2ed21f07003df9c169</guid><category><![CDATA[Teamwork]]></category><category><![CDATA[Communication]]></category><category><![CDATA[Software Engineering]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Mon, 24 Oct 2022 13:40:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1506695939086-156c2eff767b?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fGFpcnBsYW5lJTIwY29ja3BpdHxlbnwwfHx8fDE2NjgwODc0OTg&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1506695939086-156c2eff767b?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fGFpcnBsYW5lJTIwY29ja3BpdHxlbnwwfHx8fDE2NjgwODc0OTg&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Architecting Teams: Designing your team API"><p>Every software engineer should be familiar with their team&apos;s API. Their team&apos;s API is what other teams will use to interface with them when designing and building solutions. It is their boundary of responsibility and it is the first line of defence against scope creep. In this post, we&apos;ll discuss why it&apos;s so important to define your team&apos;s API and how to go about doing it.</p><h2 id="why-you-need-a-team-api">Why You Need a Team API</h2><p>A well-defined team API serves a number of purposes. First, it provides a clear boundary of responsibility for your team. Other teams know exactly what they can and cannot call on your team for. This prevents scope creep and keeps everyone on the same page. Second, a team API provides a consistent interface for how other teams should interact with your team. This means that there are fewer surprises and fewer opportunities for things to get lost in a backlog or ignored entirely. Finally, a team API makes it easier to onboard new members of your team because they have a clear starting point and a clear understanding of what their responsibilities are.</p><h2 id="how-to-define-your-team-api">How to Define Your Team API</h2><p>There are a few things you need to keep in mind when defining your team API. First, you need to think about what other teams will need to interface with yours to do their jobs. What information will they need? What specialist skills will they need? Who will they need to talk to? Second, you need to think about how often other teams will need your team. If it is only occasionally, then you can get away with a simpler API. However, if other teams will be relying on your team daily (Platform/Infrastructure teams I&apos;m talking to you), then you need to make sure that your API is robust and easy to use. For example, a simple Design System teams &quot;API&quot; might be something like this;</p><p>&quot;We are responsible for the creation and maintenance of components within the design-system repository. We are responsible for fixing problems within the components themselves, but we are not responsible for debugging and fixing issues by integrating them into the solutions of other teams. If you have a feature request or would like to report a bug, please raise a ticket following the process outlined in this document &lt;Rasing a feature/bug request&gt;. Any requests sent directly to engineers will not be actioned, and you will be referred to the above process. For any P0 requests as defined in our SLAs (&lt;Design System SLAs&gt;), please raise a ticket using the above process and escalate it to &lt;Team Leader&gt; in the public team channel&quot;.</p><p>For a more in-depth API I recommend doing the following steps;</p><h3 id="1-define-the-problem">1. Define the Problem</h3><p>The first step is to sit down with your team and identify the areas where there is confusion or ambiguity about roles and responsibilities. What are the questions that people are constantly asking each other? What processes are taking longer than they should because people don&apos;t know who is responsible for what? Answering these questions will help you to identify the areas where your team&apos;s API needs to be better defined.</p><h3 id="2-draft-the-solution">2. Draft the Solution</h3><p>Once you&apos;ve identified the areas that need work, it&apos;s time to start drafting the solution. This will involve creating a set of expectations for each role on the team. What are the core responsibilities of each role? What are the boundaries of each role? What is off-limits for each role? Answering these questions will help you to create a clear and concise definition of each role on the team. You can then uplift these responsibilities into your team API, and provide a guide on SLAs for different types of requests. Be careful not to expose who will handle each request type, especially if there is only 1 person (you might have a skills problem if that&apos;s the case), as you don&apos;t want people to bypass your process and go straight to engineers. Then you can&apos;t keep track of how much ad-hoc non-project work your team gets asked to handle.</p><h3 id="3-implement-the-solution">3. Implement the Solution</h3><p>The last step is to implement the solution. This will involve communicating the new expectations to all team members and making sure that everyone is on board with the new way of doing things. It may also involve making some changes to processes and procedures so that everyone is working within the new boundaries that have been defined. Once everyone is on board, it&apos;s time to start reaping the benefits of having a well-defined team API by shouting about it to the wider engineering organisation and giving your team the autonomy to ignore requests that do not follow the agreed processes.</p><h2 id="conclusion">Conclusion</h2><p>Defining your team&apos;s API is one of the most important things you can do as an engineering leader. It sets the boundary of responsibility for your team and provides a consistent interface for other teams to use when interacting with yours. When defining your team API, make sure to think about what other teams will need and how often they will need it. And finally, make sure to talk to your team about what they need too.</p>]]></content:encoded></item><item><title><![CDATA[Why Engineering Teams Need a Strong Product Mindset]]></title><description><![CDATA[In order to build great products, companies need to have a product mindset. This means that the people who are building the software need to be focused on solving customer problems, not on implementing features. ]]></description><link>https://www.deskoftom.co.uk/why-engineering-teams-need-a-strong-product-mindset/</link><guid isPermaLink="false">636bc6590d03ed003da7be85</guid><category><![CDATA[Culture]]></category><category><![CDATA[Software Engineering]]></category><category><![CDATA[Product]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Tue, 11 Oct 2022 15:25:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1454486837617-ce8e1ba5ebfe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDM3fHxIYXBweSUyMGN1c3RvbWVyfGVufDB8fHx8MTY2ODAwNzcwMQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1454486837617-ce8e1ba5ebfe?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDM3fHxIYXBweSUyMGN1c3RvbWVyfGVufDB8fHx8MTY2ODAwNzcwMQ&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Why Engineering Teams Need a Strong Product Mindset"><p>Too often, engineering teams are far removed from their customers and have little understanding of what they are doing or how they are using the product. This can lead to a lot of wasted time and effort, not to mention frustrated customers.</p><h2 id="why-is-a-product-mindset-important">Why is a product mindset important?</h2><p>In a fairly common team set-up for most organisations, engineers often look at the product owner as the source of truth for what they build. They get handed tickets with crafted stories and a set of criteria for what the thing they build should do. They then see their job as taking these criteria, translating them into a set of technical requirements, and then writing software to meet them. I&apos;ll put it flatly ... this is wrong.</p><p>To be able to build an effective solution, you first need to understand the problem. The product owner isn&apos;t the person facing the problem, the user is. To be able to solve the users&apos; problems effectively, you need to understand them, and what they want and need to do. This isn&apos;t to poke holes in the Product Owner, but they won&apos;t be able to fully take the evidence and client input they gathered and turn that into effective software. Chances are they may well miss things a software engineer would consider vitally important to know. I say this a lot, but it&apos;s worth repeating, writing good software is a team sport!</p><p>The product owner and software engineering team should work closely together from the start. If possible having an engineering representative on a call with the client as well as the product owner would be perfect, but even if not, the very next step they should certainly be involved in.</p><p><strong>Non-function requirements </strong>... they&apos;re a very important thing in writing good quality software, and something that a product owner may overlook. They&apos;re the things like, is it more important for this to be fast, or for it to be reliable. It&apos;s not a pure one-or-the-other scenario, but to an engineer, this can be the difference between choosing a cutting-edge technology or design to get the fastest possible performance or picking an old well known and very slow-changing technology that is known to be highly reliant. The classic product viewpoint is that speed is important, users don&apos;t like things to be slow, data will show drop off if it&apos;s not a sub-1-second request etc. However, it may be that this data is a legal requirement, and can&apos;t be dropped or malformed, in which case, speed could be bad, and speed could be risky. In this case, it may be a chance to build a technical solution that provides that stability, and to partner with User Experience experts to determine how to best give the perception of speed, or the confidence something is happening.</p><p>Thinking about the user, and their problems is a key critical skill in being able to write good software solutions to problems. This skill is often underdeveloped in engineering teams with a poor product mindset. They act like they&apos;re part of an assembly workshop, not a creative problem-solving team.</p><h2 id="product-mindset-job-satisfaction">Product mindset = Job satisfaction</h2><p>Another great added side benefit to having a product-focused engineering team is that we can close the feedback loops. The engineers are closer to the customer and get to see and feel the difference their solutions made. It&apos;s far more satisfying to get feedback that tells you something like &quot;Feature X saved me 2 hours a day on Y repetitive task, it freed me up from working longer hours, and means I get to see my children before bed&quot; than it is to be told something generic like &quot;Customer satisfaction increased&quot; or even worse ... nothing.</p><p>Lo and behold, when engineers start to get this first-hand feedback and see their positive impact, it drives them to become even more involved in the product, and in solving the users&apos; problems. They start to think like the user and make suggestions to improve the product with the user in mind. It increases innovation. It increases customer satisfaction. But most importantly, it is going to increase your retention in your teams. That sense of impact, that tangible recognition of their work, breeds a sense of purpose and belonging, and believe it or not, even your most head-down headphones on the engineer is a social being. Those things make people stick around.</p><h2 id="how-do-i-build-the-product-mindset">How do I build the product mindset</h2><p>Building a product mindset in your teams could be either a very simple thing or a very complex thing. I&apos;m afraid it will depend entirely on your company and situation. The principle at heart is very simple though, work together more, work together sooner. Get the people involved in building the software involved from the very beginning, from the requirements gathering with the user. Work closely with each function in the business to ideate, define, and deliver the solution. Track how that solution is used, and how it is performing (user analytics through to technical observability). Then gather feedback using whatever tools you have available, and make all this information available to everyone on the team.</p><p>To do this, you can just follow healthy best practices, I&apos;d advise using Extreme Programming best practices to help shorten feedback cycles. Make sure conversations are centred around the user and focused on delivering value to those customers. Sure, we are building something technical, but it doesn&apos;t matter how great a technical solution is ... if the user isn&apos;t happy and doesn&apos;t use it. To borrow a classic statement ... User first, always!</p><p>I hope this short article helps you think a bit about how you can start to create a more product-centric mindset in your engineering teams, and why it would be beneficial to your team and company to do so.</p>]]></content:encoded></item><item><title><![CDATA[The Art of Communicating Well in Software Engineering: How to Remove Friction, Confusion, and Complexity]]></title><description><![CDATA[The best software is created when all team members communicate effectively. Good communication is more than how well you talk to others or the quality of your writing. Getting communication right results in more streamlined and efficient work where everyone has the same understanding.]]></description><link>https://www.deskoftom.co.uk/the-art-of-communicating-well-in-software-engineering-how-to-remove-friction-confusion-and-complexity/</link><guid isPermaLink="false">636ba59e41654a003dd02b8a</guid><category><![CDATA[Communication]]></category><category><![CDATA[Teamwork]]></category><category><![CDATA[Culture]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Thu, 22 Sep 2022 19:33:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1563986768609-322da13575f3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDN8fENvbW11bmljYXRpb258ZW58MHx8fHwxNjY3OTk5NDAx&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1563986768609-322da13575f3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDN8fENvbW11bmljYXRpb258ZW58MHx8fHwxNjY3OTk5NDAx&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="The Art of Communicating Well in Software Engineering: How to Remove Friction, Confusion, and Complexity"><p>When we think about good communication, we often jump to the same two points; How clearly am I speaking? And, How clearly am I writing? But communication is about far more than just those two aspects. Although important, they fail to address some more critical aspects of effective communication. So what does good communication mean?</p><p>Good communication is made up of multiple concepts and parts. It is about;</p><ul><li>Removing friction to understanding</li><li>Removing confusion</li><li>Simplifying complicated topics for easy digestion</li><li>Being proactive in communication</li><li>Using the correct means of communication</li><li>Listening/reading</li><li>Speaking and writing clearly</li></ul><p>In software engineering, there can be a lot of moving parts and often times team members are located in different parts of the country if not the world. It&apos;s therefore important to have systems and tools in place that facilitate good communication between team members, and this goes beyond email and chat facilities like Slack or Teams.</p><p>Good communication is something that needs to be embodied into your company culture, and the earlier you set this standard of behaviour the better. The good news though, is that, unlike some things, this can be remedied.</p><p>There are a few key things you can do to improve communication within your team:</p><ol><li><strong>Encourage and practice active listening (and reading)</strong> - this means really hearing and understanding what the other person is saying. It requires being present and not letting your mind wander. This is probably one of the biggest things in good communication, you&apos;d be amazed to see the improvements made when people start actively listening. It&apos;s undoubtedly one of the hardest ones to master as well.</li><li><strong>Make sure everyone is on the same page</strong> - this covers the removing confusion part. Regardless of whether the communication was verbal, written, or other. When the discussion approaches what appears to be a conclusion, take that appearance with caution and review the discussion, key points and any outcomes. There is nothing worse than 3 people taking away from a discussion 3 different visions whilst believing they&apos;re all in agreement.</li><li><strong>Address the right audience in the right way</strong> - I&apos;m sure it has happened to you; you have been in a meeting where someone has spent half of it explaining something that only needed 5 minutes. And the opposite, where someone has glanced over a topic in 5 minutes and assumed you know all the details. Both leave you feeling confused or annoyed. And both cause you to lose attention and stop actively listening. So before you dive into the technical details of a project or choose to glance over deep implementation details, assess your target audience and ask yourself this question; What is the least information needed to convey the point and achieve shared understanding?</li><li><strong>Use the right tool for the job</strong> - We have probably all said, &quot;that meeting could have been an email&quot;. It&apos;s true; if you want to ensure that your communication is well received and understood, consider the medium in which it is delivered. <em><strong>How urgent is this?</strong></em> If it&apos;s very urgent, it should probably be a video/voice call, and if it&apos;s not urgent, it might be better as an email, a document, or a message in Slack/Teams. <strong><em>How detailed/complex is it?</em></strong> If it&apos;s very detailed/complex, maybe it should be a document first; give people a few days to read it, then follow up with a meeting or a channel/thread in Slack/Teams. <strong><em>How transient is this information?</em></strong> If this information is not going to change, a document would probably be best. Still, a voice/video recording could be a great adjoining way to communicate to allow for other learning styles. People often default to the meeting without considering its actual value. Before you arrange that meeting, send that email, or blast that group chat, think about what it is you&apos;re trying to achieve, and pick the solution, or solutions, that are going to support your aims whilst respecting your colleagues&apos; time.</li></ol><p>You can also foster and improve the communication culture in your software engineering org by utilising other more engineering-specific concepts. For example, Extreme Programming principles like Pair and Mob programming can take your team communication from &quot;Okay&quot; to &quot;Outstanding&quot;. You can read more about that in my article, &quot;Using extreme programming to build a strong, scalable team culture&quot;.</p><p>cccccbctejteSo there you have it, a quick and dirty guide to improving the Art of communicating well in Software Engineering.</p><p><br></p><p><br></p>]]></content:encoded></item><item><title><![CDATA[Using extreme programming to build a strong, scalable team culture.]]></title><description><![CDATA[Culture is key to any organisation, especially where the products and services you create have a global impact. Creating a strong and scalable software engineering culture is not easy. But Extreme Programming (XP) practices make it easier.]]></description><link>https://www.deskoftom.co.uk/using-extreme-programming-to-build-a-strong-scalable-team-culture/</link><guid isPermaLink="false">636ba29641654a003dd02b56</guid><category><![CDATA[Software Engineering]]></category><category><![CDATA[Growth]]></category><category><![CDATA[Leadership]]></category><category><![CDATA[Teamwork]]></category><category><![CDATA[Culture]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Tue, 06 Sep 2022 15:45:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1523240795612-9a054b0db644?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDN8fFRlYW13b3JrfGVufDB8fHx8MTY2Nzk5ODY0OA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1523240795612-9a054b0db644?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDN8fFRlYW13b3JrfGVufDB8fHx8MTY2Nzk5ODY0OA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Using extreme programming to build a strong, scalable team culture."><p>In this blog post, we will look at how Extreme Programming (XP) practices can help build a Culture of Trust that encourages open, honest communication and high levels of innovation.</p><h1 id="so-what-is-extreme-programming"><strong>So what is Extreme Programming?</strong></h1><p>Extreme Programming (XP) is a software development methodology first coined in 1996 by Kent Beck. It is based on the principles of Simplicity, Communication, Feedback, and Courage. XP has been used successfully on large-scale projects such as Microsoft Windows 2000 and XP, Adaptive Path&apos;s Manifesto project, and Chrysler Comprehensive Compensation System.</p><p>Extreme Programming practices are designed to address the challenges that software engineers face when working on complex projects. These challenges include:</p><ul><li><strong>The need for speed:</strong> In today&apos;s fast-paced world, it is important to be able to get products to market quickly. With XP practices such as continuous integration and automated testing, software engineers can make changes to code and immediately see the results. This helps reduce errors and get products to market faster.</li><li><strong>The need for quality:</strong> In order to be successful, software products must be high quality. XP practices such as test-driven development and pair/mob programming help ensure that code is of the highest quality before it is released to customers.</li><li><strong>The need for flexibility:</strong> As customer needs change, so too must the software that they use. XP practices such as refactoring and customer collaboration help make sure that code is flexible enough to meet changing needs.</li></ul><p>Ok, great, we now know what XP is, but what is it not?</p><h1 id="so-what-is-extreme-programming-not"><strong>So what is Extreme Programming Not?</strong></h1><p>Extreme Programming is not a silver bullet. It is a software development methodology that can be used well or badly. XP is not scrum. Scrum is an agile software development methodology that was created in the early 1990s by Takeuchi and Nonaka. While XP and Scrum share some common practices, they are two distinct approaches to software development.</p><p>Ok, so XP isn&apos;t just another name or variation of Scrum. I get that XP is its own set of software development principles, but how does that impact my team&apos;s culture?</p><h1 id="how-does-xp-impact-a-team-culture"><strong>How does XP impact a team culture?</strong></h1><p>As already covered, there are four principles in EP - Simplicity, Communication, Feedback, and Courage. These are at the heart of what it means to have a Culture of Trust. A culture of trust begets a culture of inclusion. A culture of inclusion breads a culture of innovation. And a culture of innovation creates products and solutions that provide delightful user experiences. The pinnacle of engineering culture that we all strive for.</p><p>Let&apos;s break down these 4 principles.</p><h2 id="1-simplicity">#1 Simplicity</h2><p>To be successful, software must be easy to use. This means that the code must be simple and easy to understand. The XP practice of &quot;You ain&apos;t gonna need it&quot; (YAGNI) helps ensure that code is kept as simple as possible. This also has the added benefit that your code and product become self-documenting, easy to change, and easy to refactor. This keeps your tech debt levels down and allows your engineers the time, space, and confidence to innovate. Empowered and happy engineers tend to stay put, which will help your employee retention rates, too (which is always nice).</p><h2 id="2-communication">#2 Communication</h2><p>For a team to be successful, members must be able to communicate openly and honestly with each other. The XP practices of &quot;pair programming&quot; and &quot;mob programming&quot; help encourage communication by requiring two or more people to work together on every* task. Naturally, people who work together closely, talk to each other frequently, form naturally stronger bonds, and as a result, are more likely to step in and help each other out when needed. Your team, as a result, become loyal to each other and care about each other, which again keeps them happy and energised and helps your retention rate (there&apos;s a theme here?).</p><blockquote>*A little caveat here is when I say &quot;every&quot;, it&apos;s not a hard requirement. Sometimes there are small changes that have only a single correct solution and implementation, and in those cases, solo programming is fine. The general rule of thumb is that pairs and mobs are the norms, and solo work is the exception. The reverse of what you usually see, even in teams that claim to communicate and collaborate frequently.</blockquote><h2 id="3-feedback">#3 Feedback</h2><p>For a team to be successful, members must be able to give and receive feedback. The practices of &quot;pair&quot; and &quot;mob&quot; programming that drove a culture of communication as a by-product drive this culture of feedback. Feedback becomes second nature and is baked into the development cycle, which, if you want, gives you a great footing to get rid of the often large bottleneck of the peer review process. The XP practice of &quot;continuous integration&quot; also helps ensure that feedback is given early and often by requiring every change to be integrated into the main codebase immediately. This allows people to test out changes quickly, iteratively, and with minimal changes required when problems are surfaced, and action is required. All of this practice and giving and receiving feedback also drives engineers to become better at their craft, and engineers who are improving are generally happy, which helps your retention rates (see where this theme is going?).</p><h2 id="4-courage">#4 Courage</h2><p>Successful teams must have the courage to experiment and fail. The communication and feedback culture gives engineers a sense of psychological safety that allows them the courage to innovate and refactor tech debt. Refactoring helps encourage experimentation by allowing code to be changed without breaking the existing functionality, it helps to keep your code base clean and simple, and it ultimately allows the team the confidence to change direction, change technology, and otherwise do what they need to do to succeed without the fear of legacy code and tech debt. Engineers that can innovate and try new things and don&apos;t get weighed down by the heavy burden of legacy code are ... you guessed it, happy. Which (repeat after me) helps your retention rates.</p><p>By following the Extreme Programming practices of Simplicity, Communication, Feedback, and Courage, teams can build a Culture of Trust that will help them move fast and stay happy.</p><h1 id="ok-but-how-does-this-scale"><strong>Ok, but how does this scale?</strong></h1><p>Extreme Programming was designed to be a lightweight process that can scale with a team. The practices are easy to follow and don&apos;t require a lot of overhead or additional processes to implement. As a result, Extreme Programming teams can easily add new members without worrying about process overhead, and the team can continue to move fast and stay happy. The added bonus is that this simplicity can apply to multiple teams and when added up, can function just as well for an organisation of 1 team and 5 people, or of 20 teams and 100&apos;s if not 1000s of people.</p><p>So there you have it; Extreme Programming is a great way to build a Culture of Trust that will help your team move fast and stay happy. And as we all know, happy teams are successful teams. And happy, successful teams don&apos;t churn, which keeps you happy too.</p><p>What do you think? Do you agree with the points made in this blog post? Let me know in the comments below! Thanks for reading! :) . . .</p>]]></content:encoded></item><item><title><![CDATA[Redundancy and Agency. 4 tips for surviving uncertainty.]]></title><description><![CDATA[Redundancy. It's a word that strikes fear into the heart, and for good reason. The thought of being out of work and struggling to make ends meet is daunting. But it doesn't have to be. By understanding and using agency, you can face redundancy head-on and come out stronger than ever.]]></description><link>https://www.deskoftom.co.uk/redundancy-and-agency-4-tips-for-surviving-uncertainty/</link><guid isPermaLink="false">636b9f8e41654a003dd02b1e</guid><category><![CDATA[Redundancy]]></category><category><![CDATA[Career]]></category><dc:creator><![CDATA[Tom Hill]]></dc:creator><pubDate>Mon, 15 Aug 2022 12:45:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1584475784921-d9dbfd9d17ca?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fERvbiUyN3QlMjBQYW5pY3xlbnwwfHx8fDE2Njc5OTc4Nzc&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<h1 id="this-post-is-personal"><strong>This post is personal</strong></h1><img src="https://images.unsplash.com/photo-1584475784921-d9dbfd9d17ca?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fERvbiUyN3QlMjBQYW5pY3xlbnwwfHx8fDE2Njc5OTc4Nzc&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Redundancy and Agency. 4 tips for surviving uncertainty."><p>For me, this topic is highly relevant and personal right now. I and many others have been made redundant in the tech sector. Whether we want to call this &quot;The Great Restructuring&quot; or when &quot;The Startup bubble burst&quot; (Like when the &quot;Dot Com Bubble&quot; burst in 2000). One thing is certain, regardless of how talented you are, how skilled you are, and how much everyone talks about a skills shortage in our industry, getting made redundant sucks. You&apos;re left feeling deflated, uncertain, angry, and worried about your future. At this point, to rub salt in the wounds, you&apos;re now competing against the thousands of other talented people in the same situation. It&apos;s hard.</p><p>But this isn&apos;t the first time I have faced this down. It probably won&apos;t be the last (I&apos;m a perennial risk taker addicted to early-stage startups and scale-ups). So here is my guide on how I survive and thrive post redundancy.</p><h1 id="1-check-your-agency"><strong>#1 Check your Agency!</strong></h1><p>No, not that kind. I&apos;m talking about your power to control your life, make decisions and enact change. This is what Personal Agency is;</p><p>&quot;Personal agency is the belief that we are in control of our lives and our destiny. It&apos;s the ability to direct our actions, thoughts, and feelings and to be responsible for the consequences of our choices and behaviours.&quot;</p><p>In other words, it&apos;s taking control of your life and owning the decisions you make. Now you know what it is, let&apos;s see how you evaluate it.</p><h2 id="the-5-components-of-personal-agency">The 5 components of personal agency</h2><p>Agency comprises 5 things; Opportunity, Awareness, Skill, Resource, and Intent. Your ability to influence the outcome relies on having everything in your control. A lack of, or misrepresentation of, one of those 5 components will drastically impact your agency in any given situation. Let&apos;s dig into each one a little bit.</p><p><strong>Opportunity </strong>&#x2013; This represents whether circumstances allow you to act, i.e., whether you have the chance to do something. A doctor must have access to a patient to treat them. In context, their agency is limited by their physical proximity.</p><p><strong>Awareness </strong>&#x2013; This is your conscious recognition of the opportunity to act, i.e., knowing there&#x2019;s something to do. Without a way to know that someone is unwell, a doctor will not be able to treat them.</p><p><strong>Skill </strong>&#x2013; This represents your relevant physical and mental abilities, i.e., what you can do. A doctor has been trained to diagnose and treat illness and injury. Without that knowledge and skill, they would be ineffective in their attempt to help and would have limited agency in the situation.</p><p><strong>Resource </strong>&#x2013; This represents the things, tools, and information you need to act, i.e., the stuff needed to do what can be done. Without the proper equipment and medicine, a doctor can do little to help a patient and have limited agency.</p><p><strong>Intent </strong>&#x2013; This represents the choice to act and the understanding of the effect, i.e., that you mean to do something to create a specific result. If doctors do not choose their actions or recognise the effect, they can only achieve a limited outcome. The conscious purpose is a critical part of your agency.</p><h2 id="how-to-use-your-agency-to-help-you-now">How to use your agency to help you now</h2><p>Now you know what agency is and what it consists of. &quot;Great; how does that help me?&quot; I hear you ask. Let me tell you.</p><h3 id="use-agency-to-let-go">Use Agency to let go</h3><p>Evaluate your current situation, evaluate your agency in that situation, and let go of the thoughts and feelings where you had little to no agency. Nothing you could have done would have avoided this situation. So let&apos;s use the agency we have to do something proactive instead.</p><h3 id="use-agency-to-give-yourself-a-confidence-boost">Use Agency to give yourself a confidence boost</h3><p>Let&apos;s start by using it to give yourself a confidence boost and to help get you over the post redundancy blues. Look for small things you can do, professional or otherwise, where you have complete control of your agency. For me, this was landscaping my garden. I was in control, had all the agency aspects I needed, and could take on the project and see it through. Having something to do, a goal to reach, and achieving that goal gave me a great sense of personal pride and fulfilment. Afterwards, I was already feeling much more positive and confident. And confidence helps in interview settings.</p><h3 id="use-agency-to-move-the-needle">Use Agency to move the needle</h3><p>Use your agency to engage your network, and move the needle forward without getting weighed down by the things you can&apos;t control. How else can you utilise your agency? You might not have control over the outcomes achieved by this, but you can certainly set yourself a goal of proactive outreach that you have complete control over. Aim to reach out to a set number of former colleagues or people of influence in your professional network each day or week. Begin to upskill yourself; if you have the agency, find a new skill you want to acquire, be that a new programming language, framework, or methodology, and get it. Watch courses, write code, whatever it takes; if you have the agency execute on it, do it. I&apos;m sure there are many more ways than the two listed above, but you should look for ways to improve your chances of finding and securing a new role that you have the agency to see through and execute on them.</p><h2 id="youve-taken-care-of-yourself-now-look-beyond-your-agency">You&apos;ve taken care of yourself; now look beyond your agency!</h2><p>You&apos;ve let go, taking care of everything you have the power to do, and now it&apos;s time to look beyond yourself. Having a strong sense of personal agency and self-reliance doesn&apos;t mean you can&apos;t or shouldn&apos;t ask for help. Look at some of the outcomes you seek, where you are lacking in an area of the agency, and use the agency you have to find people who can fill that gap and give you what you need to succeed.</p><h1 id="2-research-and-evaluate"><strong>#2 Research and evaluate</strong></h1><p>The next tip is to research and evaluate your skill set. Think about your skills, what skills you can demonstrate well, and how you have utilised them in your last (and other recent) role(s). Now compare your skills against job postings online. How do you stack up compared to demand? Is your skill set in demand? Are you missing an essential skill? Once you have determined where in the current market you sit, you need to work out your worth.</p><p>Your worth is irrespective of your current salary. Your current salary could have been way over the market. It could be way under market. It could be the current going rate. The main point is that the market has probably shifted since you last secured a role or negotiated a salary. Don&apos;t treat your past knowledge, research, and experience as a barometer for now. That would be like dressing for tomorrow based on last week&apos;s weather. Always assess the here and now. That is the market you&apos;re working in.</p><p>The best places to start are by looking on job boards, hitting up google to search for salary benchmarking and speaking with recruitment companies. Between those three points, you should be able to get a fair sense of the current market value for your skill set. Now comes the big question. Does the market value pay more, less or the same as your last role? If it pays more, good for you; get that pay rise. If it pays the same, that&apos;s great. You&apos;re playing in the right ballpark. The tricky part only comes if it pays less. Now, what do you do?</p><p>You need to evaluate yourself and your situation. Do you provide additional skills and qualities that are quantifiably worth more to a company? Saying &quot;but I&apos;m a far better at X than the average&quot; isn&apos;t going to cut it; that&apos;s going to be objective. Do you have management experience? Team Lead experience? Have you got a track record of delivering above and beyond results within budgets and timeframes? Can you prove this? There are many things to assess, but you need to work out if you can justify asking above the market.</p><p>So you have decided you can justify it ... ok, great. Now you need to do two things: re-evaluate the job market and see how many roles are out there paying above the market. And you need to look at roles that are a step up from what you were doing and see if they pay the rate you&apos;re after.</p><p>You should now have an idea of what space you&apos;re playing in. How many jobs there are that meet your expectations. And if you&apos;re going to need to stretch yourself and apply to roles above your last one by demonstrating that extra value adds you bring above your current role.</p><p>You have one last thing to do before you start throwing out your CV. Look at your finances and your lifestyle. After all, this is a volatile market with strong competition. You need to prepare for the worst case. What spending could you cut back on? What are your mandatory expenses to keep yourself (and your family) going? How does that number compare to your desired one, and how does your desired number compare to the market? Is there a big difference, a slight difference? I can&apos;t answer this one for you, but as a rule of thumb, if there is a big difference, focus more on the role than the money because you&apos;re sitting pretty; you have many options available because the market is paying more than you need. If the gap is big, and the market is paying less than you want but more than you need, prepare to adjust and include this adjustment &quot;cut-off&quot; in your plan. It only gets tricky when the gap is small, and you are asking for more than the market. In this situation, you need to start evaluating all your options, I&apos;m not a financial advisor, so I can&apos;t tell you how to handle this scenario, but my advice would be to speak to a professional to see what they advise and what your options might be.</p><p>Let&apos;s move on. Set your boundaries, and make a plan.</p><h1 id="3-set-boundaries-and-have-a-plan"><strong>#3 Set boundaries and have a plan</strong></h1><p>The first part is easy. Set your boundaries. You should already know the absolute minimum comp you need and your desired base comp. The next thing, what are your other non-negotiables? Do you categorically require fully remote, or could you be flexible and do 1-2 days in an office? Think about all of the &quot;perks&quot; and benefits on offer. Which ones have you utilised? Which ones sound great, but you&apos;ve never really used them? These are the things that build up your boundaries. For example, you might come to this kind of list;</p><p>Upper Bound (The realistic ideal):</p><ul><li>&#xA3;150K Base</li><li>Unlimited PTO</li><li>Private Health Care</li><li>&gt;5% Pension</li><li>Staff Engineer Title</li><li>Start-up/Scale-up</li></ul><p>Lower Bound (The lowest acceptable situation):</p><ul><li>&#xA3;110K Base</li><li>25 Days Holiday (This is how many you usually take on average)</li><li>5% Pension</li><li>Senior Engineer Title</li></ul><p>You can see that your base is much lower in the lower bound. The title might be what you have now rather than what you want. The pension is based on your actual average contributions right now. The PTO is based on the average you take in reality. You live in the UK, so you&apos;ve dropped the private health care as you&apos;ve never claimed on it before (Thank you, NHS). And although you love the world of start-ups and scale-ups, you could live with being in a larger corporate setting for a while.</p><p>So now you know what you&apos;re aiming for and what you&apos;d accept. You&apos;ve now got a sliding scale to work with when assessing roles, speaking to companies, and deciding if to accept an offer. My advice in this scenario is that you should accept anything that meets or exceeds your lower bound. You can always keep an eye on the market. You can always move on. The most important thing right now is your well-being and the well-being of your family.</p><p>Your scenario may be different. You might have a nest egg to last 6 months, in which case, you can be as picky as you want; I can&apos;t answer that for you. But through my experience, it&apos;s better to secure a role and move on 6 months later than to take a risk and burn your savings. Keep your savings for what is important, the future of your family.</p><h1 id="4-be-resilient"><strong>#4 Be resilient</strong></h1><p>This last point is the most difficult, and you might need to keep reviewing tip #1 and assessing your agency, but you need to be resilient. It&apos;s going to be difficult. You will likely receive rejections, sometimes after interviews, sometimes in a very impersonal email sent from an ATS (Applicant Tracking System). Now it&apos;s always effortless to say &quot;stay positive&quot; or &quot;be resilient&quot;, but it&apos;s a lot harder to do in the face of adversity and rejection. This is where I like to &quot;borrow&quot; some of the tenants from Stoicism (the philosophical school of thought). One of the things they advise you to do is to think about and reflect upon worst-case scenarios, this isn&apos;t to say to wallow in them, but it&apos;s simply to visualise them, imagine the feelings, and let yourself feel them for a moment, then move on. In stoicism, this practice is supposed to help you &quot;prepare&quot; for that scenario by allowing you time to feel and process this outcome before it ever happens, in theory lessening the load if it does happen. The other intent is so that it causes you to appreciate what you have now and to enjoy what you have now. That second part isn&apos;t very relevant in this situation, but I find the visualisation technique helpful in receiving rejections.</p><p>My other tip for resiliency is to look for and ask for feedback, you may often not receive any, and for that, I developed another &quot;hack&quot; that sometimes works for me. At the end of an interview, when asked if I have any questions, my final one is always something along these lines. &quot;Is there any understanding, skill, or aspect of my career experience that you wanted to hear more about or that I haven&apos;t given a satisfactory answer to that will leave you unsure about my capability or suitability for the role so that I can attempt to address that concern now?&quot; Sometimes the answer is no, sometimes you get good feedback, but it always gives me a pulse check on how it went when you see or hear their reaction to the question.</p><p>Overall, building resilience in this situation is about being prepared for rejection, looking for feedback to allow you to address areas of weakness (or perceived weakness), and trying to learn from each interview the same way you learn from each iteration in a development cycle.</p><p>As a reminder, this is the exact situation I am in now whilst writing this article. I&apos;m 2 months into redundancy, on the precipice of surviving on my savings whilst trying to support a young family. So this is how I tackle my feelings, staying positive, being resilient and keeping my foot on the job hunt gas. I hope it helps you too.</p><p>Keep your heads up, keep going, and reach out to talk to me if you need someone to listen. I&apos;ll see you on the other side!</p>]]></content:encoded></item></channel></rss>