<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Freddy Hidalgo-Monchez</title>
    <description>The latest articles on DEV Community by Freddy Hidalgo-Monchez (@freddyhm).</description>
    <link>https://dev.to/freddyhm</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F141802%2F0a67b982-51b7-4bcf-b73c-428332c142c8.jpeg</url>
      <title>DEV Community: Freddy Hidalgo-Monchez</title>
      <link>https://dev.to/freddyhm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/freddyhm"/>
    <language>en</language>
    <item>
      <title>What Are Your Engineering Principles?</title>
      <dc:creator>Freddy Hidalgo-Monchez</dc:creator>
      <pubDate>Fri, 01 Dec 2023 18:25:33 +0000</pubDate>
      <link>https://dev.to/freddyhm/what-are-your-engineering-principles-om1</link>
      <guid>https://dev.to/freddyhm/what-are-your-engineering-principles-om1</guid>
      <description>&lt;p&gt;In a previous post, I spoke about &lt;a href="https://dev.to/freddyhm/which-engineering-scope-are-you-using-3nil"&gt;how engineering scope influences a project&lt;/a&gt;. I believe that principles are the undercurrent to those scopes.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Are Engineering Principles?
&lt;/h2&gt;

&lt;p&gt;Engineering principles are the rules and beliefs that govern our work. They make up our unique approach to development, analysis, and problem-solving.&lt;/p&gt;

&lt;p&gt;Like microbes living in our gut: we all have them, we just might not understand what they are and how they influence us.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Are Principles Important
&lt;/h2&gt;

&lt;p&gt;As software engineers we're asked to think deeply about a huge range of topics, and often expected to excel in all of them (&lt;em&gt;"testing, security, design, tech support, operations, deployment, optimization..."&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;The truth is, that's not possible. Not at 100%.&lt;/p&gt;

&lt;p&gt;Although all engineers have a common base of concerns (e.g. we all care deeply about working solutions), there are some questions we naturally gravitate more towards than others, some areas that we're truly passionate about and are ready to die on a hill for.&lt;/p&gt;

&lt;p&gt;When we collaborate with different people from all walks of life, our principles collide. And it's in that short encounter that we have a golden opportunity to mesh together our principles to build something great, or as is sadly quite often the case, end up debating for hours with little to show for.&lt;/p&gt;

&lt;p&gt;Before we can start leveraging our principles, I think we have to &lt;em&gt;really&lt;/em&gt; think about what our principles are.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Engineering Principles
&lt;/h2&gt;

&lt;p&gt;Every engineer has their own unique blend of herbs and spices that help shape a meeting. What do I bring to the table? What are the metrics that I evaluate myself with? What does quality mean to me?&lt;/p&gt;

&lt;p&gt;These are my engineering principles so far:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Efficiency&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Striving for solutions that yield the highest value with the lowest possible cost&lt;/li&gt;
&lt;li&gt;Creating real value for stakeholders &lt;/li&gt;
&lt;li&gt;Holding myself accountable for my decisions and the team's decisions&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;

&lt;p&gt;&lt;strong&gt;Growth&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Continuously questioning, learning, and improving&lt;/li&gt;
&lt;li&gt;Experimenting with new ideas&lt;/li&gt;
&lt;li&gt;Looking past the status quo&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;

&lt;p&gt;&lt;strong&gt;Transparency&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Communicating thought process, blockers, concerns&lt;/li&gt;
&lt;li&gt;Being honest and open, especially when it's &lt;em&gt;uncomfortable&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Showing work early and often&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Why these three? Because the people I've seen create high value at an insane speed where the one's who were extremely transparent in their work, strived for efficiency in the solutions they chose, and fostered an environment of learning and experimenting. &lt;/p&gt;

&lt;p&gt;This is in contrast with other great engineers I've worked with who fostered opposing principles, and although still delivered quality work, did not have an impact at the same rate or depth.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opposite Principles
&lt;/h2&gt;

&lt;p&gt;If Efficiency's main concern is building just enough for the problem at hand, the other side of that coin is Performance, as defined as striving for the highest performing solution. The two often come at odds, especially when planning for the future (e.g. will our solution still work well in 3 years from now? Should we add that one more thing to make sure?).&lt;/p&gt;

&lt;p&gt;Similarly, I've seen Growth's counterpart often be Stability, whether that's through the standardization of practices or establishing of rules and structure. Incorporating new learnings into repeatable processes is crucial when wanting to achieve a predictable and stable level of quality.  &lt;/p&gt;

&lt;p&gt;I've found Transparency's opposite cousin to be Focus. That might sound strange, but think back to when management withheld information. What was their underlying reason? What was their concern? I would bet that they most likely feared people would react in a certain way that would ultimately affect the team's focus on their work.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Balancing Act
&lt;/h2&gt;

&lt;p&gt;I believe all principles, when balanced properly, have a positive impact. For example, Performance, Stability, and Focus are crucial in certain teams and organizations across different stages, and at time could be even more beneficial than say radical Efficiency, Growth, and Transparency.&lt;/p&gt;

&lt;p&gt;Regardless of what our engineering principles may be, the whole point is to realize that they are all valuable and that by harnessing their differences, we can achieve a better, more balanced solution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;What are your guiding principles at work? What's your north star or engineering compass?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>career</category>
      <category>watercooler</category>
      <category>learning</category>
    </item>
    <item>
      <title>How I Manage My Projects: A Step-By-Step Guide</title>
      <dc:creator>Freddy Hidalgo-Monchez</dc:creator>
      <pubDate>Sat, 16 Sep 2023 23:19:26 +0000</pubDate>
      <link>https://dev.to/freddyhm/how-i-manage-my-projects-a-step-by-step-guide-kj</link>
      <guid>https://dev.to/freddyhm/how-i-manage-my-projects-a-step-by-step-guide-kj</guid>
      <description>&lt;p&gt;There are so many tutorials on how to build stuff, but much less on how to actually manage what you're building - whether that's a quick weekend day hack or a month long project. &lt;/p&gt;

&lt;p&gt;That's a shame because I find that having a solid project management system in place can be a real game-changer. &lt;/p&gt;

&lt;p&gt;It kickstarts your ideas, keeps you aligned with your goals, and lets you stay laser-focused during development.&lt;/p&gt;

&lt;p&gt;So, here's what's been working for me over the past five years."&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Requirements
&lt;/h2&gt;

&lt;p&gt;I kick things off with a simple spec sheet:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2j666sg9osieub88dsq6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2j666sg9osieub88dsq6.png" alt="List of feature requirements"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What's the goal&lt;/strong&gt;: What's the project's main goal or purpose?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why build this&lt;/strong&gt;: Why is it important to undertake this project? Understanding the underlying motivation helps shape the project's scope&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Requirements&lt;/strong&gt;: what are the critical features to consider the first version complete?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Phases&lt;/strong&gt;: what is the essential work for each iteration? I try to keep the first as ridiculously small as possible to build momentum quickly&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mockup&lt;/strong&gt;: what does this look like? The goal is to get an idea of what the project &lt;em&gt;should&lt;/em&gt; look like. On bigger projects it can also help guide the backend work (e.g. what type of data do we need, format, etc.)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 2: Architectural Documents
&lt;/h2&gt;

&lt;p&gt;Once I know what needs to be built, I'll outline what kind of architecture can satisfy those requirements &lt;em&gt;as efficiently as possible&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;This is where I'll look at non-functional requirements and carefully think about the scope.&lt;/p&gt;

&lt;p&gt;What is critical? What can wait? What's the bare minimum? &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5s177bk1zsfx25bu7d9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5s177bk1zsfx25bu7d9.png" alt="List of non-functional requirements"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I do this early on because it'll determine the pieces I need to build the project &lt;em&gt;before&lt;/em&gt; I write a single line of code. &lt;/p&gt;

&lt;p&gt;Essentially, it lets me code with an uncluttered mind knowing that the big questions are partly answered.&lt;/p&gt;

&lt;p&gt;After narrowing down how the system should behave, I'll think about the technology that I can use. &lt;/p&gt;

&lt;p&gt;That's where &lt;a href="https://adr.github.io/" rel="noopener noreferrer"&gt;Architectural Decision Records&lt;/a&gt; come in. These are documents that clarify the reasoning behind decisions made. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frs8k2f0sb4k756jxd5wk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frs8k2f0sb4k756jxd5wk.png" alt="Architectural decision record"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This step might &lt;em&gt;feel&lt;/em&gt; like it'll just slow down the process for little gain, but I found the outcome to actually be the &lt;strong&gt;opposite&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Without this crucial planning step, I find projects tend to easily derail and can stretch from weeks to months. It's even worse on solo work where you have little accountability. &lt;/p&gt;

&lt;p&gt;The power of these docs to clarify thought and keep focus is huge!&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Feature breakdown &amp;amp; Estimates
&lt;/h2&gt;

&lt;p&gt;Almost all projects I've seen break down their features into tasks - this is nothing new. The part I find extremely useful is estimating &lt;strong&gt;time&lt;/strong&gt; and &lt;strong&gt;risk&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;For each task, I'll write down &lt;strong&gt;how long I think it'll take and how risky the task is&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;I define risk here as how probable it is that the task goes over the time I estimated.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffoe2gv2lqoimsb0tpqj7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffoe2gv2lqoimsb0tpqj7.png" alt="List of tasks with risk and estimated time"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I add up the hours and that's my &lt;strong&gt;best estimate&lt;/strong&gt;. I'll multiply it (usually by a factor of 2) and I have my &lt;strong&gt;worst estimate&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This serves a few purposes: it helps create an &lt;strong&gt;estimate that is bounded&lt;/strong&gt; (best, worst), and helps &lt;strong&gt;prioritize what to work on&lt;/strong&gt;. &lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Scheduling
&lt;/h2&gt;

&lt;p&gt;Equipped with an estimate in hours and days, the next step is to simply add it to a schedule. &lt;/p&gt;

&lt;p&gt;I find this is important because it &lt;strong&gt;makes the deadline real&lt;/strong&gt; in my head. It also keeps me regularly checking mentally if a task fits within the given timeframe.&lt;/p&gt;

&lt;p&gt;I keep this page open throughout my development: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp96mhqyhyxcnpzr8bixt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp96mhqyhyxcnpzr8bixt.png" alt="Project schedule"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now we know what we're building, how we're building it initially, and how long it's going to take. &lt;/p&gt;

&lt;p&gt;Next, we need to visualize the work. &lt;/p&gt;

&lt;h2&gt;
  
  
  Step 5: Visualizing work
&lt;/h2&gt;

&lt;p&gt;I like using a Kanban style board (&lt;a href="https://trello.com" rel="noopener noreferrer"&gt;Trello&lt;/a&gt; has been my go to for its simplicity) that has the following: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Backlog&lt;/strong&gt;: tasks that pop into my head while working &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;To Do&lt;/strong&gt;: tasks I outlined in Step 3 or pull from the backlog based on priority&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Doing&lt;/strong&gt;: what I'm currently working on&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Done&lt;/strong&gt;: what's done (useful for review at the end of project)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here's my productivity secret sauce, on every task title I add the following::&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Est.&lt;/strong&gt;: the estimated time for the task&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;RT&lt;/strong&gt;: the real time it took to complete&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tag 'Ahead' or 'Behind'&lt;/strong&gt;: is the real time below or above the estimated time?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuo2v000cwyatnw551ox6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuo2v000cwyatnw551ox6.png" alt="Kanban board"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 6: Tracking the work
&lt;/h2&gt;

&lt;p&gt;Right before I start working, I start my timer and place it in a separate screen so it's always in the corner of my eye. &lt;/p&gt;

&lt;p&gt;Seeing the time pass helps my mind remember that time is a precious resource, even if it may &lt;em&gt;feel&lt;/em&gt; like there's plenty of it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvryoawde96rhg3jwi7kl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvryoawde96rhg3jwi7kl.png" alt="List of tasks completed in toggl"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once the task is done, and this part is super important as well, I'll update the task's 'RT' on the board and set its tag to 'Ahead' or 'Behind'. &lt;/p&gt;

&lt;p&gt;Updating tasks as I complete them gives me &lt;strong&gt;instant feedback&lt;/strong&gt; on how much time is left for the project.&lt;/p&gt;

&lt;p&gt;That type of awareness ultimately guides future tasks: &lt;strong&gt;can I afford to go deeper in this area? should I leave this task for the next phase? etc.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;em&gt;NOTE: All of the previous steps wouldn't amount to much if it wasn't for this step. Tracking how long each task takes might seem like a lot of context switching, but the cost is minimal compared to the gain in awareness!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fokobmwlsjjz9jgumysvf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fokobmwlsjjz9jgumysvf.png" alt="List of tasks with estimated time and risk"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 7: Retrospective
&lt;/h2&gt;

&lt;p&gt;Once the feature is complete, I'll update the schedule with the real time it took for the project to be completed:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxorlot6rod4u2kx1ssxb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxorlot6rod4u2kx1ssxb.png" alt="Schedule with how long it took for the project to be completed"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In keeping with the spirit of agile, this is where a mini retrospective takes place: what went well, what could be improved for the next feature, what were the biggest time sinks, etc.&lt;/p&gt;

&lt;h2&gt;
  
  
  Were all those steps really necessary?
&lt;/h2&gt;

&lt;p&gt;Well no, nothing is &lt;em&gt;really&lt;/em&gt; necessary. &lt;/p&gt;

&lt;p&gt;But that question should be rephrased to: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Is finishing the project as efficiently as possible really necessary?"&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If the answer is yes, then these steps go a long way ensuring projects finish on time. &lt;/p&gt;

&lt;p&gt;And I don't know about you, but I &lt;em&gt;really&lt;/em&gt; ❤️ finishing projects on time 😜&lt;/p&gt;

&lt;h2&gt;
  
  
  Working examples
&lt;/h2&gt;

&lt;p&gt;Repositories: &lt;a href="https://github.com/freddyhm/MyRepoStats" rel="noopener noreferrer"&gt;Express app&lt;/a&gt;, &lt;a href="https://github.com/freddyhm/my-repo-stats-python" rel="noopener noreferrer"&gt;Django app&lt;/a&gt;&lt;br&gt;
Documents for the projects: &lt;a href="https://serious-swordtail-48f.notion.site/Exploration-Projects-4e410d0987ff4fed860ed9f5517d38eb?pvs=4" rel="noopener noreferrer"&gt;Notion notebook&lt;/a&gt;&lt;br&gt;
Deployed Apps: &lt;a href="https://my-repo-stats.fly.dev/" rel="noopener noreferrer"&gt;https://my-repo-stats.fly.dev/&lt;/a&gt;, &lt;a href="https://my-repo-stats-python.fly.dev/" rel="noopener noreferrer"&gt;https://my-repo-stats-python.fly.dev/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Cover photo by &lt;a href=""&gt;Dan Burton&lt;/a&gt; on &lt;a href=""&gt;Unsplash&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>management</category>
      <category>tutorial</category>
      <category>programming</category>
    </item>
    <item>
      <title>How I Increased My Team's Productivity By 40%</title>
      <dc:creator>Freddy Hidalgo-Monchez</dc:creator>
      <pubDate>Fri, 18 Aug 2023 13:19:09 +0000</pubDate>
      <link>https://dev.to/freddyhm/how-i-increased-my-teams-productivity-by-40-17ha</link>
      <guid>https://dev.to/freddyhm/how-i-increased-my-teams-productivity-by-40-17ha</guid>
      <description>&lt;p&gt;I've been focusing a lot on productivity and habit building for over a decade now. Throughout the years I've tried many different techniques and I've had a good amount of success increasing my personal productivity.&lt;/p&gt;

&lt;p&gt;Last year a random thought crept up: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;As a software engineer, could I use the same techniques to increase the overall productivity of my team?&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  The Environment That I was In
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WmPwy7S5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ocm03s4xzt79iosmabqv.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WmPwy7S5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ocm03s4xzt79iosmabqv.jpg" alt="Group of friends playing beach volleyball" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I've learned that the groundwork needed to inspire long-lasting change is deeply rooted in how a team interacts with each other. From my experience, there are no shortcuts here. &lt;/p&gt;

&lt;p&gt;Luckily, I was on a team that &lt;strong&gt;already had a strong innovative culture&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Had Learned So Far
&lt;/h2&gt;

&lt;p&gt;I've seen many initiatives started by tech/team leads slowly fade away after a few weeks. &lt;/p&gt;

&lt;p&gt;Or worse, the initiative keeps going despite its lack of effectiveness! &lt;/p&gt;

&lt;p&gt;Too often I've seen the weak results be blamed on the team's apparent lack of discipline or experience.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A mentor once told me: &lt;em&gt;"OK ideas have to be nudged. GREAT ideas spread like wildfire."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  What To Improve
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tceHsUxy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/u7k9h8vzd2n7zm8n2aey.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tceHsUxy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/u7k9h8vzd2n7zm8n2aey.jpg" alt="Runners on track field" width="800" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There were two areas I saw the team could improve on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Speed&lt;/strong&gt;: Less time spent from when a work item/ticket was worked on to when the pull request was merged  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Focus&lt;/strong&gt;: More time spent on work that produced high value for the stakeholders&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Plan
&lt;/h2&gt;

&lt;p&gt;Another good lesson from that old mentor was that the most effective strategy for change is to &lt;strong&gt;prove &lt;em&gt;before&lt;/em&gt; preaching&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;So for the next month I tried various different techniques that I believed would yield an increase in speed and focus. &lt;/p&gt;

&lt;p&gt;Some didn't move the needle much, but some were a complete game changer. &lt;/p&gt;

&lt;p&gt;Here are a few techniques that proved to be the most effective:&lt;/p&gt;

&lt;h3&gt;
  
  
  Strategy Documents
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SypKSZix--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e2hzsvhb9e7ajd5dlu3z.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SypKSZix--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e2hzsvhb9e7ajd5dlu3z.jpg" alt="Two people working on a document" width="800" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For trickier issues, I would write a short plan of how I was going to solve a problem and why I had chosen that specific technique. &lt;/p&gt;

&lt;p&gt;I then shared it with the team to gather feedback and consensus around what was being built. This is what I came to call a strategy document.&lt;/p&gt;

&lt;p&gt;This type of feedback is nothing new, but it's something that's normally left for the Pull Request stage or covered in a daily/meeting. &lt;/p&gt;

&lt;p&gt;My hypothesis was that by collaborating asynchronously and as early as possible it would &lt;strong&gt;decrease the time spent on coding and PR reviewing&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;A nice side hypothesis was that it could potentially welcome a more diverse set of stakeholders to give feedback (clients, product owner, managers, directors, etc.).&lt;/p&gt;

&lt;h3&gt;
  
  
  Weekly Team Objectives
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ_vDkCs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fn11yq9jd6wvrde6a6mt.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ_vDkCs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fn11yq9jd6wvrde6a6mt.jpg" alt="A team of rowers" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For our daily work, we tended to just pick work items we were interested in or followed what we had completed before. &lt;/p&gt;

&lt;p&gt;This created &lt;strong&gt;mini-silos&lt;/strong&gt; were engineers would establish residency in certain parts of the codebase. &lt;/p&gt;

&lt;p&gt;With weekly team objectives, my hypothesis was that engineers would naturally &lt;strong&gt;switch their focus to the objectives&lt;/strong&gt; meaning more &lt;strong&gt;collaboration&lt;/strong&gt; and higher &lt;strong&gt;impacting work&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Small Pull Requests
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bm5KPBja--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s79vdtsqm3ox1wmcd88p.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bm5KPBja--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s79vdtsqm3ox1wmcd88p.jpg" alt="Shipping containers on a boat" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Everyone already knew that small PRs were the way to go on our team, but there seemed to be hesitation, maybe even a lack of belief that it was worth it. &lt;/p&gt;

&lt;p&gt;I had already seen this work very well in a previous team, so my hypothesis was that by showing the value of my super small PRs I would get more teammates on board.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Results
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UNNIuXWV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b20miu5kpastjhf7llu1.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UNNIuXWV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b20miu5kpastjhf7llu1.jpg" alt="A work team laughing together" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once I started implementing these changes for my own work, my teammates, curious bunch that they are 😁, started asking questions. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Is it ok to merge changes that are not completely finished? What should be in a strategy document? Where are those team objectives you were talking about?&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That's when I knew these ideas had potential to make an impact.&lt;/p&gt;

&lt;p&gt;In the next month, my teammates started trying these techniques and asking more questions about the process. &lt;/p&gt;

&lt;p&gt;By the end, we saw a &lt;strong&gt;decrease of 40% in time spent&lt;/strong&gt; from implementing changes to merging pull requests for the entire team. &lt;/p&gt;

&lt;p&gt;Naturally our &lt;strong&gt;deployment frequency went up&lt;/strong&gt; as well, and given we had achieved this through reviewing each other's solutions deeper, our &lt;strong&gt;change failure rate also went down&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;But most importantly, our team &lt;em&gt;felt&lt;/em&gt; substantially more productive and dynamic. &lt;/p&gt;

&lt;p&gt;It's somewhat ironic that by slowing down to invest more time in collaboration before coding, we were able to achieve both a quicker output and a superior codebase compared to our previous approach.&lt;/p&gt;

&lt;h3&gt;
  
  
  If you do the same, will you see the same results?
&lt;/h3&gt;

&lt;p&gt;Maybe. I don't know.&lt;/p&gt;

&lt;p&gt;It's not about the practices or tools you put into the place, it's about that word every engineer is sick of hearing, &lt;strong&gt;culture&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;The techniques were just an &lt;strong&gt;accelerator&lt;/strong&gt; for what was already there. &lt;/p&gt;

&lt;p&gt;I mean, you might even see &lt;strong&gt;negative&lt;/strong&gt; productivity if your team does not have enough trust or cohesiveness. Readers beware!&lt;/p&gt;

&lt;p&gt;Sadly it's an area of tech that I feel not enough people are working on: how to build &lt;em&gt;real&lt;/em&gt; innovative culture. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;A few paid lunches and go-karting with the team each quarter isn't going to get us very far.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But that's for another post 😃&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Have you initiated productivity changes in your team? What were the results? What did you learn from that experience?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Photos by: &lt;br&gt;
&lt;a href="https://unsplash.com/@jannesglas?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Jannes Glas&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/0NaQQsLWLkA?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;br&gt;
&lt;a href="https://unsplash.com/@slelham?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Steven Lelham&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/atSaEOeE8Nk?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;br&gt;
&lt;a href="https://unsplash.com/@homajob?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Scott Graham&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/5fNmWej4tAA?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;br&gt;
&lt;a href="https://unsplash.com/@mitchel3uo?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Mitchell Luo&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/H3htK85wwnU?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;br&gt;
&lt;a href="https://unsplash.com/@carrier_lost?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Ian Taylor&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/HjBOmBPbi9k?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;br&gt;
&lt;a href="https://unsplash.com/@priscilladupreez?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Priscilla Du Preez&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/XkKCui44iM0?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;br&gt;
&lt;a href="https://unsplash.com/@brookecagle?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Brooke Cagle&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/g1Kr4Ozfoac?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>productivity</category>
      <category>softwareengineering</category>
      <category>management</category>
    </item>
    <item>
      <title>Which Engineering Scope Are You Using?</title>
      <dc:creator>Freddy Hidalgo-Monchez</dc:creator>
      <pubDate>Thu, 17 Aug 2023 13:10:17 +0000</pubDate>
      <link>https://dev.to/freddyhm/which-engineering-scope-are-you-using-3nil</link>
      <guid>https://dev.to/freddyhm/which-engineering-scope-are-you-using-3nil</guid>
      <description>&lt;p&gt;In the few years I've been working in tech, I've started to see common patterns that engineers adopt to solve most problems. For example, here's a popular problem with different approaches:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; The way we clean our client's archives is complex and messy.&lt;/p&gt;

&lt;h3&gt;
  
  
  Craftsman's scope - How to make the piece better?
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qUIhiwmw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/brk564ofkw5c8drukn03.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qUIhiwmw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/brk564ofkw5c8drukn03.jpg" alt="Welder smoke sparks" width="512" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Maybe we can simplify the clean up script. Can we possibly use another language with built-in features we can leverage, maybe one with less dependencies?"&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It's the stereotypical engineering work we find in TV and movies. This is the scope that can spend days or years focused on extracting +5% of efficiency out of a component. It's where algorithms are born and faster compute time is achieved.&lt;/p&gt;

&lt;h3&gt;
  
  
  Architect's scope - How to make the system better?
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Eh5gRakP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lrar10n5rdaagg7zhfmq.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Eh5gRakP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lrar10n5rdaagg7zhfmq.jpg" alt="person designing system" width="512" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Since the data is spread out evenly, maybe we can create a centralized service that cleans each archive at a certain frequency?"&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The Architect scope is focused on arranging the pieces to produce an elegant system. Tools for this problem are still rooted in technology, but seen through a lens that encompasses more abstract concepts like patterns, relationships, coordination, and communication.&lt;/p&gt;

&lt;h3&gt;
  
  
  Entrepreneurial's scope - How to serve the client better?
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pcc7_Gzr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/41mtr06f6ijv25citrc6.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pcc7_Gzr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/41mtr06f6ijv25citrc6.jpg" alt="man leaning hand on table in shop looking at group of customers" width="512" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Maybe we should confirm that our users even need this data. How often do they access it? Can they live with only the last X number of backups?"&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In this scope, technology is simply a giant lever to fill a &lt;em&gt;real&lt;/em&gt; need. Communication and vision are the most useful tools here since uncovering needs and addressing them efficiently is much more about understanding than technology's use.&lt;/p&gt;

&lt;h2&gt;
  
  
  Finding a great solution requires the right mix
&lt;/h2&gt;

&lt;p&gt;I believe much of what plagues software engineering is that we simply &lt;strong&gt;copy roles from other disciplines&lt;/strong&gt;, but we don't organize our thinking around what those roles &lt;em&gt;actually&lt;/em&gt; mean. Or ignore the fact that some scopes tend to misalign with people's preference.&lt;/p&gt;

&lt;p&gt;Titles like &lt;em&gt;"architect"&lt;/em&gt;, &lt;em&gt;"senior engineer"&lt;/em&gt;, and &lt;em&gt;"manager"&lt;/em&gt; should technically embody one scope over the other, but I rarely see that level of separation in thinking. Especially when those positions are filled by engineers who have spent &lt;em&gt;years&lt;/em&gt; looking at problems deeply through a &lt;strong&gt;Craftsman&lt;/strong&gt; scope.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"If you've ever had a manager spend hours preaching the benefits of a mapping library, while you have yet to have a talk about your career progression, you can see the scope misuse at work"&lt;/em&gt;  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;My hypothesis&lt;/strong&gt;: When the three scopes are used effectively, teams are much more productive in achieving the best possible solution to a given problem. &lt;/p&gt;

&lt;h3&gt;
  
  
  Have you seen these scopes in the wild? Do you lean towards one more than the other?
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;Image references:&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Photo by &lt;a href="https://unsplash.com/@markusspiske?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Markus Spiske&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/LfEUDdg6yQs?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Photo by &lt;a href="https://unsplash.com/@roblambertjr?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Rob Lambert&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/9Q_pLLP_jmA?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Photo by &lt;a href="https://unsplash.com/@thisisengineering?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;ThisisEngineering RAEng&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/WE-BiNwgwXc?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Photo by &lt;a href="https://unsplash.com/@clemono?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Clem Onojeghuo&lt;/a&gt; on &lt;a href="https://unsplash.com/photos/mQ0_MMw5qas?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>discuss</category>
      <category>career</category>
      <category>softwareengineering</category>
    </item>
  </channel>
</rss>
