<?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: Vitaly Sharovatov</title>
    <description>The latest articles on DEV Community by Vitaly Sharovatov (@sharovatov).</description>
    <link>https://dev.to/sharovatov</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%2F588299%2F1969a0d1-4374-40f1-9be4-302ffd602267.jpg</url>
      <title>DEV Community: Vitaly Sharovatov</title>
      <link>https://dev.to/sharovatov</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sharovatov"/>
    <language>en</language>
    <item>
      <title>QA myth busting: Quality can be measured</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Thu, 11 Jul 2024 10:14:50 +0000</pubDate>
      <link>https://dev.to/sharovatov/qa-myth-busting-quality-can-be-measured-4jp</link>
      <guid>https://dev.to/sharovatov/qa-myth-busting-quality-can-be-measured-4jp</guid>
      <description>&lt;p&gt;Let’s bust some QA myths. &lt;/p&gt;

&lt;p&gt;First myth: Quality can be measured. &lt;/p&gt;

&lt;p&gt;Everyone wants to measure quality, but the idea that quality can be definitively measured is a myth. &lt;/p&gt;

&lt;p&gt;Imagine trying to measure the quality of a family road trip. What would make the road trip an indisputable success for the entire family? You’ll have a hard time finding metrics that could give you a solid answer. &lt;/p&gt;

&lt;p&gt;Of course, that doesn’t mean that we shouldn’t use the tools and metrics at our disposal to analyze and improve quality. It just means we need to have a broader understanding of what quality measurements tell us and what to do with that information. &lt;/p&gt;

&lt;h2&gt;
  
  
  Definitions of quality give us a general idea to work towards
&lt;/h2&gt;

&lt;p&gt;Without a clear, shared understanding of “quality,” there is too much ambiguity in what the end goal is. This is particularly important for such a complicated topic as quality and quality assurance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://efrcertification.com/Ref/ISO+9000-2005.pdf" rel="noopener noreferrer"&gt;ISO 9000&lt;/a&gt; defines quality as “a degree to which a set of inherent characteristics fulfills requirements”. This implies that quality of a product is how it satisfies clients’ needs and desires, expressed in the form of requirements.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.iso.org/obp/ui/#iso:std:iso-iec:25000:ed-2:v1:en" rel="noopener noreferrer"&gt;ISO 25000&lt;/a&gt; offers a more specific definition for software quality: “capability of software product to satisfy stated and implied needs when used under specified conditions”. This focuses on the software’s ability to meet both explicit and implicit client needs within the client’s context.&lt;/p&gt;

&lt;p&gt;Combining these perspectives, we can formulate a unified definition: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Quality is a match between what’s desired and what’s produced&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Quality is subjective
&lt;/h2&gt;

&lt;p&gt;Quality can only be achieved if we, the IT folks, first understand what the client wants and desires, and then are able to produce what we understand. If the clients use our software and are happy with it, this should mean we succeeded in understanding them and producing what they wanted. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.researchgate.net/profile/John-Crespi-3/publication/46556281_Quality_Sunk_Costs_and_Competition/links/58682cc008ae6eb871b75337/Quality-Sunk-Costs-and-Competition.pdf" rel="noopener noreferrer"&gt;Science has struggled&lt;/a&gt; with measuring and quantifying quality for this particular reason: quality is very subjective. People will only consider a product or service to be high quality if they feel that the product or service pleases them or helps them solve their problems.&lt;/p&gt;

&lt;p&gt;Accepting the fact that quality is very subjective, is it even possible to fully measure it? &lt;/p&gt;

&lt;p&gt;Let’s go back to the family road trip. You, the driver,  have a destination (project completion) and planned stops (project milestones).  Let’s say you made all the planned stops and made it to your destination. That would add up to a high quality road trip, right? No, because quality is not measured by getting to the destination, but rather the experience along the way. Let’s say one passenger got food poisoning, you spent several hours stranded with a flat tire, and a hotel at one of the planned stops lost your reservation so you had to sleep in the car one night. Would you still perceive that as a quality road trip?&lt;/p&gt;

&lt;h2&gt;
  
  
  Quality is heavily influenced by people’s perceptions
&lt;/h2&gt;

&lt;p&gt;The overall quality of a product is ultimately determined by how people perceive it and perceptions can’t be fully measured. You can’t get into the heads of the customers and see what they think of your product. &lt;/p&gt;

&lt;p&gt;However there are various measures for checking if clients are happy:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Employing &lt;a href="https://qase.io/blog/dogfooding-and-quality/" rel="noopener noreferrer"&gt;dogfooding practice&lt;/a&gt;, where the employees become the first clients of the product, giving them a much better understanding of the customer;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Organizing customer surveys and focus-groups, getting direct feedback on the product;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Coming up with &lt;em&gt;proxy metrics&lt;/em&gt; for quality, such as Net Promoter Score (NPS), Customer Satisfaction Score (CSAT), and Customer Effort Score (CES).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A proxy metric is used when it is expensive, very difficult, or impossible to measure something directly. Proxy metrics only correlate with the intended state rather than measuring it directly. &lt;/p&gt;

&lt;p&gt;If the NPS metric is going down, it might be that the quality has not changed, but the &lt;a href="https://www.linkedin.com/pulse/nps-17-does-culture-affect-customer-survey-outcomes-17th-fitzgerald/" rel="noopener noreferrer"&gt;NPS is now measured in a market with a different culture&lt;/a&gt;. Similarly, CSAT and CES only correlate with quality because people's responses are quite often &lt;a href="https://pubmed.ncbi.nlm.nih.gov/12479503/" rel="noopener noreferrer"&gt;significantly influenced&lt;/a&gt; by various &lt;a href="https://en.wikipedia.org/wiki/Response_bias" rel="noopener noreferrer"&gt;response biases&lt;/a&gt; (when people simply don’t share the truth in the surveys). One can say that &lt;em&gt;usually&lt;/em&gt; when quality goes down, NPS, CSAT and CES go down, but it’s not granted.&lt;/p&gt;

&lt;p&gt;While the quality from the clients perspective can’t be fully measured, there is still some value in the proxy metrics: they serve as a signal for further analysis.&lt;/p&gt;

&lt;p&gt;Continuing with the family road trip example, let’s say your destination is San Francisco, California. The quality of the journey depends on your family’s perception of the trip — and there is no definitive way to measure their perceptions. Before the trip, you may have agreed to hit specific sightseeing spots along the way and not to drive faster than 90 miles per hour, which serve as proxy metrics for the quality of the trip.&lt;/p&gt;

&lt;p&gt;If you rely only on the proxy metrics, you’d think driving at a reasonable speed and spending 5 minutes at each stop would be enough. But if your family is frustrated by being rushed through planned stops, you play music everyone hates, and ignore all their requests and complaints throughout the trip, your family is unlikely to perceive the trip as a high quality experience. &lt;/p&gt;

&lt;p&gt;Now let’s imagine gathering feedback from your family during the trip. At certain points, you ask your family to rate the quality of the road trip experience on a scale of 1-5. As you continue the journey, the score is gradually decreasing, even though you are staying below 90 mph and stopping at all the planned sightseeing spots. Two proxy metrics (speed and planned stops) tell you that you are achieving quality while another (feedback score) tells you that you are not.&lt;/p&gt;

&lt;p&gt;The value in the proxy metrics is not to definitively determine quality, but rather to serve as a signal for further analysis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;If you are driving under 90 mph but you notice some family members are looking nauseous, you should analyze the situation. Are you swerving too aggressively? Braking too suddenly? Is under 90 mph still too fast?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you see that the feedback score is dropping during the drive, you should look into the cause. Is your family unhappy with the time spent at each sightseeing spot? Do they need more snacks? Could the music be improved?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Internal quality metrics and employee perceptions
&lt;/h2&gt;

&lt;p&gt;So far we’ve talked about the quality from the client point of view or “external quality.” There’s also “internal quality” of the product, or as &lt;a href="https://martinfowler.com/articles/is-quality-worth-cost.html" rel="noopener noreferrer"&gt;Martin Fowler explores it&lt;/a&gt;: “how easy it is to keep modifying the code.” &lt;/p&gt;

&lt;p&gt;Internal quality is all about the sustainability of development. Every engineer has had to deal with “messy code” or “bad architecture,” when it was ridiculously hard to make any changes to the code. There are a multitude of reasons why an engineer can perceive the code as “bad” or “low quality,” but this perception is also very &lt;em&gt;subjective&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;There is no universal metric showing how “good” or “bad” the code is, as all engineers, along with their skills and knowledge of the codebase, are different and have different opinions. Of course, there are general signs of “bad” code, such as high &lt;a href="https://en.wikipedia.org/wiki/Cyclomatic_complexity" rel="noopener noreferrer"&gt;cyclomatic complexity&lt;/a&gt; of a module or a function. However, there are valid cases where it is not possible to reduce cyclomatic complexity, for example, when building &lt;a href="https://ieeexplore.ieee.org/abstract/document/6601491" rel="noopener noreferrer"&gt;finite state machines&lt;/a&gt;. In any case, all the signs of “bad” code are still subject to interpretation of the development team, and any human interpretation is inherently subjective.&lt;/p&gt;

&lt;p&gt;For example, one might think that the percentage of test coverage would be a good objective metric of code quality, but there are cases where the code coverage percentage might be decreasing, while the internal quality is &lt;em&gt;improving&lt;/em&gt;. This might happen, for instance, when the low-value extremely &lt;a href="https://qase.io/blog/flaky-tests/" rel="noopener noreferrer"&gt;flaky tests&lt;/a&gt; are removed from the codebase, or when a trustworthy third-party library replaces custom-built modules.&lt;/p&gt;

&lt;p&gt;Like external quality, all internal quality metrics are proxy metrics, only correlating with internal quality. And, once again, &lt;strong&gt;the value in the proxy metrics is mainly to serve as a signal for further analysis&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Here we need to talk about the road trip in terms of the driver, passenger, and car experience. As the driver, you have to watch the speedometer, monitor the map, and follow all the passenger requests, even if they are unreasonable. You become so focused on external quality (your family’s perception of the trip) that you ignore other signs of quality. Let’s say two of your family members insist you drive off road through a desert. You know that your car is not built for such tough driving conditions, but your passengers (the customers) want to see the desert, so you drive off the paved road and ignore signs of tire wear and strange sounds coming from the engine. You might even push through extreme fatigue to keep driving your passengers where they want to go. &lt;/p&gt;

&lt;p&gt;Maybe your family is happy and perceive the road trip as high quality for a time, but while focusing on the external quality (your family’s happiness), you neglect the internal quality (the car's capabilities and your happiness), which eventually leads to the car (and you) breaking down. &lt;/p&gt;

&lt;p&gt;Clearly, neglecting internal quality in the desire to satisfy customers isn’t an ideal approach either. And just like external quality, there is no way to fully measure internal quality. &lt;/p&gt;

&lt;h2&gt;
  
  
  Metrics are signals, not finite measurements nor goals
&lt;/h2&gt;

&lt;p&gt;We’ve stated that both internal and external quality can not be fully measured, but there are certain correlating proxy metrics.&lt;/p&gt;

&lt;p&gt;As the correlation does not necessarily mean that the change of the metric value always indicates the change of quality, the main value for the proxy metrics is to serve as a signal for analysis.&lt;/p&gt;

&lt;p&gt;If we see that the test coverage percentage is dropping, we should analyze why. Is it that we removed redundant tests which weren’t yielding much value, or have we started rushing and deploying new features without any tests?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If metrics change, we should never aim to improve the metrics instead of analyzing the underlying reasons for their change. Only the analysis will show if any actions are needed, and if so, which ones and where.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A friend once worked for a startup, building a multimedia player app for Android tablets. They started with their own custom database engine, and even managed to cover 40% of it with tests. However, the clients kept complaining about data being sometimes lost or corrupted. The team discovered that most of these problems were due to the issues in the database engine. Upon extensive research and multiple test integrations, they replaced the custom database with SQLite. Clients stopped reporting issues. &lt;/p&gt;

&lt;p&gt;Switching to SQLite significantly improved the overall quality of the product, even though the test coverage dropped significantly.&lt;/p&gt;

&lt;p&gt;What if instead of improving the quality they set the goal to get 100% test coverage? They would then have two options:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Spend years writing tests for the database while stopping or slowing down other development, essentially risking the whole business&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pay SQLite hundreds of thousands of dollars to &lt;a href="https://sqlite.org/th3.html" rel="noopener noreferrer"&gt;get access to TH3&lt;/a&gt; (extensive test harness for SQLite) for little reason — SQLite always tests their releases with the same TH3 harness.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Both options would lead to unintended harmful consequences of setting the metric value as the goal. &lt;a href="https://www.linkedin.com/pulse/measurements-metrics-unintended-consequences-vitaly-sharovatov-g41ee/" rel="noopener noreferrer"&gt;When metrics are set as goals, Goodhart’s law kicks in and unintended consequences arise&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Back to the road trip. You learned from last time and decided to set some metrics for measuring the quality of the road trip. You create a clear plan for what parts of San Francisco you’ll be visiting, assign someone to be in charge of music for the entire ride, and set a goal to hit at least 15 roadside attractions and spend at least 20 minutes at each stop. You’ve improved all measurable metrics, so your road trip is indisputably “high quality” right? &lt;/p&gt;

&lt;p&gt;Unfortunately, no. By planning for more events in San Francisco, you reduced the food budget for the entire trip so now your passengers are unhappy with the meal choices. The frequent and lengthier stops at roadside attractions slow you down and interrupt the flow of the music that another passenger painstakingly planned out. And this time around, your partner is pregnant and much more prone to motion sickness and sensitive to food smells in the car — their perception of quality changed, just like customers’ perception of quality does over time. &lt;/p&gt;

&lt;h2&gt;
  
  
  Quality can’t be fully measured, but there is value in information
&lt;/h2&gt;

&lt;p&gt;Different metrics correlate with various aspects of the quality of the product and can hint at where and what to analyze. &lt;/p&gt;

&lt;p&gt;The broader the metric, the harder the analysis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;If your NPS is decreasing, you will need to analyze pretty much everything in your product: from the market changes to your product UX and design, from performance to defects in code&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you see the number of requests to customer support growing, you should discuss with CS, QA, and Dev to determine what’s going on &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you see the number of flaky tests growing, you need to meet with platform engineers, QA, and Dev to investigate the cause&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you see the number of returns from QA to Dev growing, you need to meet with QA and Dev to figure out the reason&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you see the &lt;a href="https://qase.io/blog/code-review-best-practices/" rel="noopener noreferrer"&gt;code review&lt;/a&gt; average time growing, you need to figure out the reasons with the Dev team&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The reasons for why each metric changed could vary. The measurement alone doesn’t tell you anything, it might only hint at where to start the analysis. Like in the road trip example — everyone liked the food the first time so you keep it the same, but the satisfaction score for food goes down on the second trip. The decrease in food satisfaction doesn’t necessarily mean the food is the problem, it just signals that you should look into it. Further investigation reveals that your partner’s pregnancy makes them particularly sensitive to greasy food, and their complaints about everyone else’s food smells in the car make the rest of the family have a less enjoyable time. &lt;/p&gt;

&lt;h2&gt;
  
  
  How to use metrics and measurements
&lt;/h2&gt;

&lt;p&gt;Take the following steps:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Choose the metric, start measuring and visualize for monitoring
&lt;/h3&gt;

&lt;p&gt;With internal software quality, there’s plenty of metrics to select for monitoring. In their book &lt;a href="https://www.amazon.com/Software-Metrics-Innovations-Engineering-Development-ebook/dp/B07VVFQH5D/" rel="noopener noreferrer"&gt;Software Metrics: A Rigorous and Practical Approach&lt;/a&gt;, Norman Fenton and James Bieman list several. Here are some to consider:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Cyclomatic complexity&lt;/strong&gt; measures the number of linearly independent paths through a program’s source code. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Code coverage&lt;/strong&gt; measures the percentage of code that is covered by automated tests.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Defect density&lt;/strong&gt; measures the number of defects per unit of code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Defect resolution time&lt;/strong&gt; is the average time taken to fix reported defects&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Cycle time&lt;/strong&gt; is the time taken from the start of a development task to its completion.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Lead time&lt;/strong&gt; is the total time from the initial request to the delivery of the feature.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The number of returns from QA to Dev&lt;/strong&gt; is how many times tickets are passed back to development after &lt;a href="https://qase.io/blog/bug-vs-defect/" rel="noopener noreferrer"&gt;QA finds bugs&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For more detailed guidance, check our &lt;a href="https://qase.io/blog/defect-management/" rel="noopener noreferrer"&gt;article on defect management&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Let’s take “&lt;strong&gt;the number of returns from QA to Dev&lt;/strong&gt;” as an example. Say we have an old-school process where developers work on features, and each feature has a ticket in Jira. When a developer completes the work, they pass the Jira ticket from “in development” to “ready for testing” status, so that testers can pick it up for testing. If testers find defects, they log all the necessary information and pass the ticket back to the “in development” status so that the developers can fix found issues.&lt;/p&gt;

&lt;p&gt;Then, we decide to monitor how many times tasks are “returned” from QA to Dev because we know that any defect found slows down the development and we really want developers to assure quality before passing the feature on to testers. We decide that there’s some correlation between “how many tickets are passed back from QA to Dev” and quality. We think that when the testers start passing more tickets back to developers, it’s a good signal for us to analyze the situation.&lt;/p&gt;

&lt;p&gt;To start monitoring the metric, we need to display it. &lt;a href="https://community.atlassian.com/t5/Jira-questions/Reporting/qaq-p/2340779" rel="noopener noreferrer"&gt;Jira allows us to do so via JQL, custom fields, and automation&lt;/a&gt;. Essentially, you will see how many times tickets go from QA back to Dev in a certain period of time, such as one week.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Apply Shewhart’s control charts to the measurements
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://asq.org/quality-resources/control-chart" rel="noopener noreferrer"&gt;Shewhart control charts&lt;/a&gt; are tools used in statistical process control to monitor how a process changes over time. Shewhart control charts help you distinguish between normal variations (random fluctuations) and actual issues (signals that something is wrong). With Shewhart control charts, it’s easier to understand if the process is in a state of control or if there are variations that need attention. The reason why Shewhart control charts are beneficial is because every work item is different, and the metric value might fluctuate a little naturally. When natural fluctuations occur, there’s no need for analysis or any other action.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiudux8vqia1pny14y00b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiudux8vqia1pny14y00b.png" alt="Shewhart control chart example" width="432" height="236"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Applying Shewhart’s control chart to the metric of tracking how many times QA returns tasks to Dev is quite straightforward:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get the number of times QA returns each Jira ticket to Dev each week&lt;/li&gt;
&lt;li&gt;Calculate the statistics:

&lt;ul&gt;
&lt;li&gt;Mean (average): the average number of returns per week&lt;/li&gt;
&lt;li&gt;Range: the difference between the highest and lowest number of returns in the dataset&lt;/li&gt;
&lt;li&gt;Standard deviation: the amount of variation or dispersion from the average&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Create the control chart:

&lt;ul&gt;
&lt;li&gt;X-Axis: weeks&lt;/li&gt;
&lt;li&gt;Y-Axis: number of returns from QA to Dev&lt;/li&gt;
&lt;li&gt;Center Line (CL): the average number of returns&lt;/li&gt;
&lt;li&gt;Control Limits: calculate and plot the Upper Control Limit (UCL) and Lower Control Limit (LCL). Typically, these are set at three standard deviations above and below the mean.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Plot the data: for each week, plot the number of returns on the chart&lt;/li&gt;
&lt;li&gt;Analyze the chart and look for patterns or trends that indicate a problem:

&lt;ul&gt;
&lt;li&gt;Points outside control limits indicate a potential issue that needs further analysis&lt;/li&gt;
&lt;li&gt;Run of points above or below the center line suggest a shift in the process that also might need further analysis&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsqby3t529a9dtgwim53c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsqby3t529a9dtgwim53c.png" alt="shewhart control charts for returns from qa" width="800" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Shewhart’s control charts help us filter out statistically insignificant variations in the metric value, thus giving us a better understanding if the monitored metric is signaling us for analysis of the potential issues. So based on the above graph, we’d want to investigate why there was a sudden drop in tasks returned to Dev in week 6 and a spike in weeks 7-8 before returning to average. At first glance you might think that week 6 was a great week. But the reality might be that half of the QA team was on vacation in week 6 so less tasks were returned to dev during that week and the numbers spiked in weeks 7 and 8 because the team was catching up. &lt;/p&gt;

&lt;h3&gt;
  
  
  3. When detecting a surge or a drop, analyze the reasons
&lt;/h3&gt;

&lt;p&gt;If we observe a statistically significant surge or drop, we need to analyze the reasons. &lt;/p&gt;

&lt;p&gt;Reasons are always different as processes, people, product, organizational structure, and company culture form a unique context. &lt;/p&gt;

&lt;p&gt;The number of returns from QA to Dev growing could be attributed to various reasons such as: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;A new skilled tester is hired and they start finding more bugs. Nothing needs to change, as the developers see it as fair and start paying more attention to quality and testing. Even with the metric going up, quality eventually improves.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;KPIs for QAs focusing on finding bugs are introduced by management, leading to even minor issues being treated as bugs and tickets being sent back to development. The metric goes up while the quality goes down alongside &lt;a href="https://qase.io/blog/improve-qa-dev-relations-with-tools/" rel="noopener noreferrer"&gt;relations between developers and QA&lt;/a&gt;. The solution would be to remove the KPIs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Layoffs hit the development team hard: the most experienced and therefore well-paid developers are fired, and the quality diminishes. The analysis shows that QAs did start finding more true defects in the code. There is no solution except for waiting until the remaining developers learn or for the company to realize their mistake and hire more experienced developers. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A new manager starts imposing deadlines on the development team, causing them to cut corners and rush to push the tickets to QA. The analysis shows that QAs did start finding real defects, but the only solution is to inform the new manager of the damage he is causing to the product.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The company is purchased by a larger one and is forced to change its approach to work. Previously, QAs would simply talk to developers and fix bugs together right away, so tickets were rarely passed back from QA to development. Now, QAs are forced to do their work after development is finished, resulting in more tickets being passed back. The quality remains the same, but the delays increase.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  4. Reassess the metrics regularly
&lt;/h3&gt;

&lt;p&gt;As we agreed, different metrics only &lt;em&gt;correlate&lt;/em&gt; with various aspects of the product quality, and can only hint at where and what to analyze. There might be cases when the correlation &lt;em&gt;disappears&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;For example, a bank might decide to gradually replace the old Cobol codebase which had 80% test coverage with a new system built in Java. The team agreed to have only the core functionality fully covered with &lt;a href="https://qase.io/blog/how-to-start-with-autotests/" rel="noopener noreferrer"&gt;autotests&lt;/a&gt;, meaning that the whole refactoring project will constantly show an overall drop in the test coverage metric. In this scenario, there is no need to constantly analyze what’s behind the test coverage dropping trend. It would make perfect sense to ignore this metric until the refactoring is complete.&lt;/p&gt;

&lt;p&gt;The rule of thumb for reassessing the metric is simple: if upon a few instances of analysis you see that there’s no correlation between the metric change and the product quality, consider pausing monitoring for this metric or replacing it with a different one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Stop measuring quality metrics and start using them as signals instead
&lt;/h2&gt;

&lt;p&gt;Remember that quality is not definitively measurable. You can plan the perfect road trip with your family,  hit every milestone, and reach the intended destination and still end up with a car full of unhappy passengers. &lt;/p&gt;

&lt;p&gt;If all your metrics are showing “good” performance but your employees are fleeing the company (passengers bailing on the road trip), you’re doing something really wrong. If all your metrics are showing “good” performance but your customers are choosing your competitor’s product (family chooses alternate vacation options), you’re also doing something wrong.&lt;/p&gt;

&lt;p&gt;Metrics can only serve as a signal to analyze the reasons and improve the processes upon analysis. Embrace the inherent subjectivity of the quality, use metrics wisely, and &lt;a href="https://qase.io/blog/total-quality-management/" rel="noopener noreferrer"&gt;employ TQM&lt;/a&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: overcome mental sets</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Thu, 22 Dec 2022 08:50:27 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-overcome-mental-sets-25c0</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-overcome-mental-sets-25c0</guid>
      <description>&lt;p&gt;Building quality product strongly depends on the team’s ability to solve clients’ problems effectively.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-set-up-dogfooding-234g"&gt;The previous article&lt;/a&gt; detailed the procedural mechanism of problem-solving. This article is devoted to overcoming a psychological effect that negatively influences professionals’ ability to rationally reason about the constraints and goals: ‘&lt;a href="https://www.britannica.com/topic/thought/Algorithms-and-heuristics#ref990402" rel="noopener noreferrer"&gt;mental sets&lt;/a&gt;’:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;a frame of mind involving a model that represents a problem, a problem context, or a procedure for problem solving. When problem solvers have an entrenched mental set, they fixate on a strategy that normally works well but does not provide an effective solution to the particular problem at hand. A person can become so used to doing things in a certain way that, when the approach stops working, it is difficult for him to switch to a more effective way of doing things.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Abraham Maslow, in his book &lt;a href="https://www.amazon.com/Psychology-Science-Abraham-Harold-Maslow/dp/0060341459" rel="noopener noreferrer"&gt;The Psychology of Science: A Reconnaissance&lt;/a&gt;, coined this as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Every engineer can easily recall a case when some technology or approach is chosen simply because ‘ah it solved the problem before’, even when the current context differs a lot from the one when the original choice was optimal.&lt;/p&gt;




&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/m45odD0Ht00"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;This video shows how the Papuan New Guinea tribe welcomed the explorers and happily traded with them.&lt;/p&gt;

&lt;p&gt;Western goods were slowly commoditising via air cargo delivery.&lt;/p&gt;

&lt;p&gt;A curious thing happened next: a &lt;em&gt;ritual&lt;/em&gt; emerged. In an irrational attempt to ensure delivery continuity, members of the tribe started building airplanes, airstrips, and airport watch towers. They constructed all these objects using available materials: wood, straw, grass, and stones. Even headphones were carved from wood.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ncRd34mB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://d36r73waboa44k.cloudfront.net/2022/12/image.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ncRd34mB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://d36r73waboa44k.cloudfront.net/2022/12/image.png" alt="cargo-cult airplane construction" width="800" height="515"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;None of these objects worked; they were created as part of the ritual. The people believed that the goods they received arrived &lt;em&gt;because&lt;/em&gt; of the airplanes and that by mimicking the landing process, they could continue to receive them.&lt;/p&gt;

&lt;p&gt;This set of beliefs is now known as &lt;a href="https://www.britannica.com/topic/cargo-cult" rel="noopener noreferrer"&gt;Cargo cult&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Cargo cult falls into &lt;a href="https://www2.palomar.edu/users/bthompson/Post%20Hoc%20Ergo%20Propter%20Hoc.html" rel="noopener noreferrer"&gt;post hoc ergo propter hoc&lt;/a&gt; category of beliefs:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The argument offers an explanation, based on a temporal ordering of the events, that confuses co-occurrence with causality: A happened just before B, so A caused B.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;‘Post hoc ergo propter hoc’ logical fallacy is deeply rooted in how homo sapiens think.&lt;/p&gt;

&lt;p&gt;Evolutionarily, it is beneficial to make causal connections between events that happen one after the other.&lt;/p&gt;

&lt;p&gt;For example, if a child touches a heated iron and feels pain, they will likely avoid doing it again. If a tribe experiences an earthquake followed by a volcano eruption in which many members die, those who survive will likely flee whenever they feel another quake. Similarly, if a person makes a joke and sees people frown, they will probably not repeat it.&lt;/p&gt;

&lt;p&gt;The human brain is particularly good at memorizing the result of a sequence of events, especially when they are dangerous: it is better to flee immediately when a carnivore is spotted, even if the sighting is inaccurate or mistaken.&lt;/p&gt;

&lt;p&gt;The mechanism behind this is called &lt;a href="https://www.tandfonline.com/doi/abs/10.1080/09515089208573042?journalCode=cphp20" rel="noopener noreferrer"&gt;implicit learning&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;an inductive process whereby knowledge of a complex environment is acquired and used largely independently of awareness of either the process of acquisition or the nature of that which has been learned&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Implicit learning requires minimal conscious effort: a child learns their first language or how to ride a bicycle easily.&lt;/p&gt;

&lt;p&gt;In a few years, this child may be able to speak a language fluently without being able to explain its grammar rules. They &lt;em&gt;feel&lt;/em&gt; what &lt;em&gt;sounds right&lt;/em&gt; and what &lt;em&gt;doesn’t&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Similarly, a child might be unable to write a textbook teaching others how to ride a bicycle.&lt;/p&gt;

&lt;p&gt;In these cases, knowledge and skills are acquired &lt;em&gt;implicitly&lt;/em&gt;, while the development of science is based solely on &lt;a href="https://link.springer.com/referenceworkentry/10.1007/978-1-4419-1428-6_2166" rel="noopener noreferrer"&gt;explicit learning&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;a conscious operation where the individual makes and tests hypotheses in a search for structure. Explicit learning is equivalent with intentional learning of information.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;People study, learn, process, adapt, hypothesize, and validate the information contained in textbooks through conscious, explicit knowledge acquisition, which requires a lot of mental effort.&lt;/p&gt;

&lt;p&gt;However, with time and practice, the amount of effort needed to solve problems decreases, leading to mastery of the subject. This mastery is sometimes referred to as "unconscious competence" or intuition, where performing a skill becomes almost natural to the person.&lt;/p&gt;

&lt;p&gt;"Unconscious competence" can lead to the "mental set effect", where a person's focus is narrowed to only considering solutions that have worked well in the past: the brain applies the same short neural circuitry seen in implicit learning and tries to save energy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Mental set effect" may reduce professional's ability to solve problems and lead to the use of "cargo-cult" solutions.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;‘Jira worked for us well in other company, let’s install it here too’&lt;/li&gt;
&lt;li&gt;‘Only mongoDB will do here, installing’&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Mental sets effects are hard to notice; people think they are doing a great job and consciously solve problems. They will provide a seemingly rational explanation of their thought process if asked. Psychology calls this &lt;a href="https://www.tandfonline.com/doi/full/10.1080/13869795.2017.1287292" rel="noopener noreferrer"&gt;rationalisation&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;explicit reasoning we offer to ourselves and to others is often rationalization, that we act instead on instincts, inclinations, stereotypes, emotions, neurobiology, habits, reactions, evolutionary pressures, unexamined principles, or justifications other than the ones we think we’re acting on, then we tell a post hoc story to justify our actions&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In the &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-set-up-dogfooding-234g"&gt;previous article&lt;/a&gt; I stated that efficient problem-solving is a process of multi-fold synthesis.&lt;/p&gt;

&lt;p&gt;To avoid mental sets’ hindrance to the synthesis process, certain conditions must be met:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Collective interactive problem-solving is to be employed;&lt;/li&gt;
&lt;li&gt;Psychological safety needs to be ensured to enable people to express ideas freely;&lt;/li&gt;
&lt;li&gt;The team should be diverse so that the number of hypotheses is higher and different heuristics mechanisms are present;&lt;/li&gt;
&lt;li&gt;People should be genuinely interested in working together.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Collective problem solving
&lt;/h2&gt;

&lt;p&gt;A famous &lt;a href="https://link.springer.com/referenceworkentry/10.1007/978-3-319-19650-3_3439" rel="noopener noreferrer"&gt;Wason Selection Task&lt;/a&gt; shows how irrationally and illogically people approach problem-solving sometimes.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/S7BnLELjsYI"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Another example of a mental sets effect is well-illustrated by "The Candle Problem":&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/FRtQNS5dFO8"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://pubsonline.informs.org/doi/abs/10.1287/mnsc.1120.1668?casa_token=-UfEpKBtxmMAAAAA:bWAXEWpA1Ju2niKyiwT0oiVI0q0yALYpdujj1TUzTJjyY2pApn1ih6Xh4hJBV_yLxUb0_qtzOA" rel="noopener noreferrer"&gt;Studies&lt;/a&gt; prove that switching from individual to team collective reasoning improves the results significantly:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Our results show that teams trade closer to the rational level, learn the solution faster, and achieve this with weaker, less specific performance feedback than individuals&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Similar results are found with &lt;a href="https://journals.sagepub.com/doi/10.1080/17470218.2011.605151" rel="noopener noreferrer"&gt;mental sets&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Engineering interactive problem-solving environments involving manipulable artefacts that embed reasoners in a distributed cognitive system is not simply an exercise in making the task more concrete: It engages a broad range of skills that are more representative of thinking as observed outside the laboratory.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There is a strong scientific consensus that &lt;strong&gt;mental sets almost always disappear&lt;/strong&gt; when the whole team collaborates on solving a problem, and everyone comes up with ideas and thoughts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NB&lt;/strong&gt;: There is even a scientific theory postulating that the human mind is ‘social’ and that reasoning &lt;a href="https://hal.archives-ouvertes.fr/hal-00904097/" rel="noopener noreferrer"&gt;works solely through interaction&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The whole team should participate in the problem-solving activity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Psychological safety
&lt;/h2&gt;

&lt;p&gt;Pieces of advice from the &lt;a href="https://qase.io/blog/quality-knowledge-overlap/" rel="noopener noreferrer"&gt;knowledge overlap&lt;/a&gt; article are paramount to follow: people need not be afraid to develop ideas.&lt;/p&gt;

&lt;h2&gt;
  
  
  Team diversity
&lt;/h2&gt;

&lt;p&gt;Many studies &lt;a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC528939/" rel="noopener noreferrer"&gt;suggest&lt;/a&gt; that a team comprised of people with different functional and heuristics diversity would solve problems better:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;An ideal group would contain high-ability problem solvers who are diverse&lt;/p&gt;

&lt;p&gt;...&lt;/p&gt;

&lt;p&gt;our result suggests that diversity in perspective and heuristic space should be encouraged. We should do more than just exploit our existing diversity. We may want to encourage even greater functional diversity, given its advantages.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Every team member's experience, heuristics, and way of thinking are important to the process.&lt;/p&gt;

&lt;p&gt;The problem-solving process is improved by a greater variety of synthesised triples (constraints, goals, and transitions): the more proposals brought to the discussion, the better.&lt;/p&gt;

&lt;p&gt;Designing the hiring process so that ‘different’ people are filtered out during the ‘cultural fit’ stage means that mental sets will just get reinforced.&lt;/p&gt;

&lt;h2&gt;
  
  
  Interest
&lt;/h2&gt;

&lt;p&gt;Problem-solving is a creative game of synthesis.&lt;/p&gt;

&lt;p&gt;While it is possible to &lt;em&gt;force&lt;/em&gt; people to solve problems, the way their minds work cannot be controlled. People will naturally come up with more straightforward solutions. Mental sets will have an even more substantial impact.&lt;/p&gt;

&lt;p&gt;Finding ways to &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-emotions-and-interest-2igm"&gt;provoke interest&lt;/a&gt; in problem-solving is a better choice of action.&lt;/p&gt;

&lt;p&gt;Also, a good mood &lt;a href="https://pubmed.ncbi.nlm.nih.gov/24215265/" rel="noopener noreferrer"&gt;helps&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Participants experiencing positive affect were more likely to detect the simple solution than participants experiencing negative affect. These findings reveal that affect modulates how much we are constrained by current mindsets.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h1&gt;
  
  
  How to start
&lt;/h1&gt;

&lt;p&gt;The simplest way to organise collective problem solving is through an activity resembling a &lt;a href="https://www.twi-global.com/technical-knowledge/faqs/faq-what-is-brainstorming" rel="noopener noreferrer"&gt;brainstorming session&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Brainstorming is a method of generating ideas and sharing knowledge to solve a particular commercial or technical problem, in which participants are encouraged to think without interruption. Brainstorming is a group activity where each participant shares their ideas as soon as they come to mind. At the conclusion of the session, ideas are categorised and ranked for follow-on action.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.sciencedirect.com/book/9780128110355/total-quality-management" rel="noopener noreferrer"&gt;TQM talks on brainstorming&lt;/a&gt; quite a lot too:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;it is a systematic procedure of weighing pros and cons, and looks at all the forces for and against a decision. Since creativity is the main key for this tool, brainstorming is used during the procedure&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There’s a good &lt;a href="https://www.sciencedirect.com/science/article/pii/B9780124071575000014" rel="noopener noreferrer"&gt;book on brainstorming&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;P.S. &lt;a href="https://www.amazon.com/Thinkertoys-Handbook-Creative-Thinking-Techniques-2nd/dp/1580087736" rel="noopener noreferrer"&gt;Thinkertoys: A Handbook of Creative-Thinking Techniques&lt;/a&gt; discusses various methods that can help enhance an individual's creative thinking skills, but collaborating with others tends to be more effective.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;References&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.jstor.org/stable/40328383" rel="noopener noreferrer"&gt;A Cargo Movement in the Eastern Central Highlands of New Guinea&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.amazon.com/Road-Belong-Cargo-Movement-Southern/dp/0881334588" rel="noopener noreferrer"&gt;Road Belong Cargo: A Study of the Cargo Movement in the Southern Madang District, New Guinea&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://skepdic.com/sympathetic.html" rel="noopener noreferrer"&gt;Sympathetic Magic&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www2.palomar.edu/users/bthompson/Post%20Hoc%20Ergo%20Propter%20Hoc.html" rel="noopener noreferrer"&gt;Post hoc ergo propter hoc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/topics/neuroscience/implicit-learning" rel="noopener noreferrer"&gt;Implicit Learning&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/2242788_Principles_for_Implicit_Learning" rel="noopener noreferrer"&gt;Principles for Implicit Learning&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/291107442_Implicit_Learning_Tacit_Knowledge_Expertise_Development_and_Naturalistic_Decision_Making" rel="noopener noreferrer"&gt;Implicit Learning, Tacit Knowledge, Expertise Development, and Naturalistic Decision Making&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://cpb-us-e1.wpmucdn.com/sites.northwestern.edu/dist/8/4164/files/2012/07/Reber-Implicit-Learning-2017.pdf" rel="noopener noreferrer"&gt;Implicit Learning: History &amp;amp; Applications&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://mitpress.mit.edu/9780262571357/brain-vision-memory/" rel="noopener noreferrer"&gt;Brain, Vision, Memory. Tales in the History of Neuroscience&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tandfonline.com/doi/abs/10.1080/09515089208573042?journalCode=cphp20" rel="noopener noreferrer"&gt;An evolutionary context for the cognitive unconscious&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/topics/psychology/explicit-learning" rel="noopener noreferrer"&gt;Explicit learning&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://lignos.org/papers/Lignos-Learning-Experiments-PLC36.pdf" rel="noopener noreferrer"&gt;You Can’t Get There from Here: On Interpreting Learning Experiments&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://repositorio.ispa.pt/bitstream/10400.12/5004/1/COG%2C%2013%282%29%2C%20237-260.pdf" rel="noopener noreferrer"&gt;Beyond human and intellectual capital: Profiling the value of knowledge, skills and experience&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tandfonline.com/doi/full/10.1080/13869795.2017.1287292" rel="noopener noreferrer"&gt;Post hoc ergo propter hoc: some benefits of rationalization&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/24215265/" rel="noopener noreferrer"&gt;Overcoming fixed mindsets: the role of affect&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://journals.sagepub.com/doi/10.1080/17470218.2011.605151" rel="noopener noreferrer"&gt;Einstellung Defused: Interactivity and Mental Set&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/322682384_The_Wason_Selection_Task_A_Meta-Analysis" rel="noopener noreferrer"&gt;The Wason Selection Task: A Meta-Analysis&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubsonline.informs.org/doi/abs/10.1287/mnsc.1120.1668?casa_token=-UfEpKBtxmMAAAAA:bWAXEWpA1Ju2niKyiwT0oiVI0q0yALYpdujj1TUzTJjyY2pApn1ih6Xh4hJBV_yLxUb0_qtzOA" rel="noopener noreferrer"&gt;Teams Make You Smarter: How Exposure to Teams Improves Individual Decisions in Probability and Reasoning Tasks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/book/9780128110355/total-quality-management" rel="noopener noreferrer"&gt;Total Quality Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/pii/B9780124071575000014" rel="noopener noreferrer"&gt;Brainstorming and Beyond&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC528939/" rel="noopener noreferrer"&gt;Groups of diverse problem solvers can outperform groups of high-ability problem solvers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hbr.org/2017/03/teams-solve-problems-faster-when-theyre-more-cognitively-diverse" rel="noopener noreferrer"&gt;Teams Solve Problems Faster When They’re More Cognitively Diverse&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/351785434_COGNITIVE_DIVERSITY" rel="noopener noreferrer"&gt;COGNITIVE DIVERSITY&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.amazon.com/Thinkertoys-Handbook-Creative-Thinking-Techniques-2nd/dp/1580087736" rel="noopener noreferrer"&gt;Thinkertoys: A Handbook of Creative-Thinking Techniques&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: set up dogfooding</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Wed, 07 Dec 2022 13:54:37 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-set-up-dogfooding-234g</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-set-up-dogfooding-234g</guid>
      <description>&lt;p&gt;Many successful companies employ &lt;a href="https://www.edume.com/blog/what-is-dogfooding" rel="noopener noreferrer"&gt;Dogfooding practice&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Eating your own dog food or "dogfooding" is the practice of using one's own products or services.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In 1980 Apple wanted to dominate the computer market. To achieve that, among other measures they introduced &lt;a href="https://www.inc.com/magazine/19811001/2033.html" rel="noopener noreferrer"&gt;dogfooding&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"EFFECTIVE IMMEDIATELY!! NO MORE TYPEWRITERS ARE TO BE PURCHASED, LEASED, etc., etc. Apple is an innovative company. We must believe and lead in all areas. If word processing is so neat, then let's all use it! Goal: by 1-1-81, NO typewriters at Apple... We believe the typewriter is obsolete. Let's prove it inside before we try and convince our customers."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Michael Scott and Steve Jobs wanted all their employees to become the first users of Apple products: the dogfooding practice emerged.&lt;/p&gt;

&lt;p&gt;Any practice or process activity should have a rational reason.&lt;/p&gt;

&lt;p&gt;This article explores the rationality of Dogfooding practice. The way how problems are generally solved needs to be reviewed first.&lt;/p&gt;

&lt;h2&gt;
  
  
  Solving problems
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;A customer comes to the shop at 11 am and purchases a burger.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A customer then comes to the shop at 8 pm and cannot purchase a burger as the shop is closed.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F0bfhtc7o15vgsv399l3x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F0bfhtc7o15vgsv399l3x.png" alt="Image description" width="800" height="885"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Is there a problem?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Did the customer stay hungry?&lt;br&gt;
Did the shop lose money?&lt;br&gt;
Both?&lt;/p&gt;

&lt;p&gt;How can the shop solve the problem?&lt;/p&gt;

&lt;p&gt;What does it even take to solve a problem?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Problem_solving" rel="noopener noreferrer"&gt;Wikipedia says&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Problem solving is the process of achieving a goal by overcoming obstacles&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The mathematical representation of this thesis would be: &lt;strong&gt;y=f(x)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Where:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;y&lt;/strong&gt; is the &lt;em&gt;goal&lt;/em&gt;,&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;x&lt;/strong&gt; is the context containing chosen obstacles/constraints,&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;f&lt;/strong&gt; is the solution: the way we operate with the context to achieve the goal.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;All&lt;/em&gt; the variables in the equation need to be defined:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;constraints need to be chosen&lt;/li&gt;
&lt;li&gt;goal has to be picked &lt;/li&gt;
&lt;li&gt;a way to operate within these constraints to achieve the chosen goal should be found&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;NB&lt;/strong&gt;: Those familiar with &lt;a href="https://en.wikipedia.org/wiki/Business_process_management" rel="noopener noreferrer"&gt;BPM&lt;/a&gt; will notice interesting similarities:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;Picking the goal&lt;/em&gt; is very similar to &lt;em&gt;describing a to-be model&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Choosing&lt;/em&gt; &lt;strong&gt;x&lt;/strong&gt; &lt;em&gt;the context&lt;/em&gt; looks like &lt;em&gt;building an as-is model&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Designing&lt;/em&gt; &lt;strong&gt;f&lt;/strong&gt; &lt;em&gt;process&lt;/em&gt; is the main area studied: the synthesis of a transition from one state to another.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Choosing the constraints
&lt;/h2&gt;

&lt;p&gt;The context always contains an infinite amount of constraints. The practicality requires picking those that are important.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;x&lt;/strong&gt; transforms into a set of variables: &lt;strong&gt;x = {x1, x2, x3, ... xn }&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Choosing the essential constraints demands a good knowledge of the current state of affairs.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;x1&lt;/strong&gt; should be the information source: how do we know of the problem and how many customers are affected&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;x2&lt;/strong&gt; might be shop economics: how profitable it is, how much money can be invested&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;x3&lt;/strong&gt; can be laws and regulations: from labour law to licensing&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;x4&lt;/strong&gt; may be shop position in the market: how good its reputation is, how well known it is&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ignoring (or not knowing) some of the constraints might make achieving a particular goal not possible or optimal, e.g.:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If &lt;strong&gt;x1&lt;/strong&gt; is a guess, then any investment in solving the problem is high-risk,&lt;/li&gt;
&lt;li&gt;If &lt;strong&gt;x3&lt;/strong&gt; is ignored, and the 24 hour license cannot be obtained, changing the schedule might not be an option,&lt;/li&gt;
&lt;li&gt;If &lt;strong&gt;x4&lt;/strong&gt; is ignored, and there’s a McDonald’s opening at a stone’s throw soon; achieving certain goals might not be optimal.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Picking the goal
&lt;/h2&gt;

&lt;p&gt;Picking the goal is deciding what &lt;em&gt;the new system should be like&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Most managers call this their ‘vision’: a guesswork or intuition (so-called &lt;a href="https://www.cmu.edu/dietrich/psychology/infant-cognition-lab/publications/Poulin-Dubois%20&amp;amp;%20Rakison%20(1999).pdf" rel="noopener noreferrer"&gt;implicit knowledge&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Coming up with a goal is pure &lt;a href="https://www.nagwa.com/en/explainers/545181414698/" rel="noopener noreferrer"&gt;synthesis&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;There are even methods designed to help with goals’ synthesis, e.g., &lt;a href="https://www.triz.co.uk/what-is-triz" rel="noopener noreferrer"&gt;TRIZ&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Different goals might be chosen for the shop example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;y1&lt;/strong&gt; — clients don’t come at night&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;y2&lt;/strong&gt; — clients are served 24/7&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;y3&lt;/strong&gt; — clients cook at home when the shop is closed&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Defining the transition for each goal
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Goal &lt;strong&gt;y1&lt;/strong&gt; — Clients don’t come at night
&lt;/h3&gt;

&lt;p&gt;What are the ways to achieve this goal within the chosen constraints?&lt;/p&gt;

&lt;p&gt;The simplest way would be to inform the clients of opening times, &lt;strong&gt;f1&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;y1 = f1 (x1, x2, x3, x4)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This might reduce clients’ frustration (affect &lt;strong&gt;x4&lt;/strong&gt;) as they won’t try visiting the shop at night.&lt;/p&gt;

&lt;p&gt;The transition will not require any changes to the way the shop operates ( &lt;strong&gt;x2&lt;/strong&gt; and &lt;strong&gt;x3&lt;/strong&gt; won’t change). Most likely additional revenue will not be generated.&lt;/p&gt;

&lt;h3&gt;
  
  
  Goal &lt;strong&gt;y2&lt;/strong&gt; — Clients are served 24/7
&lt;/h3&gt;

&lt;p&gt;What are the ways to achieve this goal within the chosen constraints?&lt;/p&gt;

&lt;p&gt;One way would be to start working 24/7, &lt;strong&gt;f2&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;y2 = f2 (x1, x2, x3, x4)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This will require quite a significant change to the way shop operates, and &lt;strong&gt;x2&lt;/strong&gt; and &lt;strong&gt;x3&lt;/strong&gt; constraints should allow these changes, while &lt;strong&gt;x4&lt;/strong&gt; may influence generating more revenue:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;laws should allow purchasing 24/7 license, and its price should be affordable,&lt;/li&gt;
&lt;li&gt;hiring more staff is required to introduce night shifts,&lt;/li&gt;
&lt;li&gt;shop reputation and marketing expenses need to attract enough clients at night.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Goal &lt;strong&gt;y3&lt;/strong&gt; — Clients cook at home when the shop is closed
&lt;/h3&gt;

&lt;p&gt;What are the ways to achieve this goal within the chosen constraints?&lt;/p&gt;

&lt;p&gt;One way would be to start selling ingredients for clients to cook their favorite recipes at home, &lt;strong&gt;f3&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;y3 = f3 (x1, x2, x3, x4)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This way will require an insignificant change to the way the shop operates. &lt;strong&gt;x2&lt;/strong&gt; might afford this easier than in &lt;strong&gt;f2&lt;/strong&gt; case. This transition might also positively affect the shop’s reputation &lt;strong&gt;x4&lt;/strong&gt; and generate more revenue &lt;strong&gt;x2&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Comparing the solutions
&lt;/h2&gt;

&lt;p&gt;The solution to the problem is the goal and the transition.&lt;/p&gt;

&lt;p&gt;Some goals might &lt;em&gt;be picturing a brighter future&lt;/em&gt; than others, while the corresponding transitions might be riskier or more expensive. Some goals might be &lt;em&gt;modest&lt;/em&gt;, while the corresponding transitions are cheap and low-risk.&lt;/p&gt;

&lt;p&gt;A solution should be weighed with the constraints.&lt;/p&gt;

&lt;p&gt;Naturally &lt;strong&gt;x2&lt;/strong&gt; (the economics) constraint’ weight is taken into consideration, but in most cases, people tend to turn almost a blind eye on &lt;strong&gt;x1&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;x1&lt;/strong&gt; should be the information source: how do we know of the problem, and how many customers are affected?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;What are the possible ways to see the problem or find out about it?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://pdf.sciencedirectassets.com/278653/1-s2.0-S1877705814X00354/1-s2.0-S1877705814034092/main.pdf?X-Amz-Security-Token=IQoJb3JpZ2luX2VjECkaCXVzLWVhc3QtMSJIMEYCIQCfm91vYkmmWv4pKBUj4FWwQxpqo3vh8kYDJm%2FtBnkcowIhAIvJzmHsfnmcIEz%2BSTKQQ8MYz%2Bbj9HohzTD0HQcmtg1LKswECEEQBRoMMDU5MDAzNTQ2ODY1IgzupaSbOUzeZGsvNZIqqQRhJ6cmfpP64rm4I49S%2BQgyUKGp%2BZvuAiaoq6qmHu4wi4N4pT3EPbG3YLHcI06BrEFGPeVCeZAS3VFJW4NX5wNlIjSi2N%2FA%2BOdfIPbFKm9udj8wsYsx0kXnvs0ev8XM2c076UQLP2soLI3jD0RHuecGbtsaOGB0UausVjQsMpoq0nPRPDI9gt7V%2F8I%2BHb0YBCtJQJ0rEQwG7ghgFVO%2Bxqk1eiOJ%2FFctBEQmoA7CXpI%2ByuW%2Boy6zY9VILsR1YNgaJyqoYA0kDXE1EsL%2FW7ONdKp5vWrpFMyF7VYe%2BJo9Qf5wpLIHJzZzEFiETi9bQzZJ%2FKTAQKnANwQ29dnElG1jeT93kqmsEnI%2BMZl3BYPb64NiKKVqGkrPa5tgFQ4dXX%2B0aZ361D5iHyct1mfeaLUsFFBvJlXPUadIuZuDf5RK9JWLaWuKAAocBtgv1PA9YlVlaJiShZZp2dSGIC4RdmdWPFwp2b5EgF3v5Z%2Fx%2FHtp%2FQN4AfLkdCuvbzz%2Fi6qije%2BycWkaRJ2Ya8wT9aQ%2F4BIl%2FTAcwc2tASLKrY8yrlMInpvsR1JowDBd6aLLp9Rl0Rtkawfq1zJA02x4zAo6idmSrGCqNllE%2FJDAgVQmVGp%2Ffn6Nz3kh2q7Bbvuz0hoxkL9CUKn%2B3CyvN4vBIp7qxFALk9uxknUKJrRoRBFr6YGMya1pX%2B3ail6kP0840si5SgxPhAIEWtMBiVsWG%2BsHqJ1u0cxrOU7Pgmy%2FsekGMOfakZwGOqgBD4SEuVWxiUpMfaZGov3HtZw09rUss0%2BHfxVuJnH2lqX0Iob0FmuDq9O4QTiKkyx3hwBCLRgLqSFVlNH2BYoWI93%2FX%2BLXAsPMwqSohBz4weJPuDj6XxHkGIuMxDbyVm9mNqzOKPuofxrd%2BZQCsYKq7K9q5lIHvAruPewtfiLN%2FcW%2FYsgTwic3IvJNVSG2NCtTD2lAUhw2Cyzr4y%2FanhjPs5bxg7LNrPDk&amp;amp;X-Amz-Algorithm=AWS4-HMAC-SHA256&amp;amp;X-Amz-Date=20221128T085642Z&amp;amp;X-Amz-SignedHeaders=host&amp;amp;X-Amz-Expires=300&amp;amp;X-Amz-Credential=ASIAQ3PHCVTYRWMJ3L7B%2F20221128%2Fus-east-1%2Fs3%2Faws4_request&amp;amp;X-Amz-Signature=797f75f65987ba29ffb2e135644312ced1b6da6e8998f27120796831585cc6ce&amp;amp;hash=c102d493794f0b57457b5b58cd947f01f295aa06f154b6146771fd3c6ce15181&amp;amp;host=68042c943591013ac2b2430a89b270f6af2c76d8dfd086a07176afe7c76c2c61&amp;amp;pii=S1877705814034092&amp;amp;tid=spdf-429e6a80-1712-45b1-803b-f81055f01ccb&amp;amp;sid=e78c91272311e240c66acea6a24c1fd61b42gxrqb&amp;amp;type=client&amp;amp;ua=515454500b5b51045a0c&amp;amp;rr=7711e44c9bee959f" rel="noopener noreferrer"&gt;Lean manufacturing&lt;/a&gt; has the practice of &lt;a href="https://leanscape.io/principles-of-lean-08-gemba-walks/" rel="noopener noreferrer"&gt;Gemba walks&lt;/a&gt;, where management comes to the production facility and works &lt;strong&gt;in the process&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;if you want to improve your business, you need to learn more about your processes, your people, your customers, you need to go and see for yourself.&lt;/p&gt;

&lt;p&gt;Managers and business leaders today are often so separated from the actual work by corporate structures. They have not seen the process. They have not spoken to any customers. And they don’t even talk to the people who do the work daily.&lt;/p&gt;

&lt;p&gt;Everyone, from CEO downwards, has the responsibility to spend time on the shop floor watching how to produce the product or service&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Gemba pays special attention to the production process &lt;em&gt;inside the company&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Gemba doesn’t help much with providing context on &lt;em&gt;what’s beyond the walls&lt;/em&gt;. Gemba suggests the employees talk to the customers, yielding just one link in the information flow chain.&lt;/p&gt;

&lt;p&gt;There’s an inherent &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj"&gt;information loss&lt;/a&gt; in every act of communication, and the fewer links in the information flow chain, the better.&lt;/p&gt;

&lt;p&gt;It’s also possible to have zero links in the information flow chain: &lt;strong&gt;the employees might become the customers themselves&lt;/strong&gt;. The dogfooding practice emerges.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dogfooding
&lt;/h2&gt;

&lt;p&gt;Dogfooding in the shop example context discussed above would potentially imply:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;an engineer living in that particular area where the most shop customer reside&lt;/li&gt;
&lt;li&gt;an engineer becoming one of many customers of the shop, following their usual shopping and behavioural patterns.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The engineer becomes an average customer, knowing all the peculiarities and fully understanding the customer’s context.&lt;/p&gt;

&lt;p&gt;It is much easier to organise dogfooding in software development. As soon as the engineer becomes the first customer of the product or service, they begin to see the domain area's problems. The engineer becomes the trustworthy source of &lt;strong&gt;x1&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Good examples of companies implementing dogfooding practices are 37signals, Apple, Microsoft, and Gitlab.&lt;/p&gt;

&lt;p&gt;Gitlab &lt;a href="https://about.gitlab.com/handbook/values/" rel="noopener noreferrer"&gt;states dogfooding as the company value&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We use our own product. Our development organization uses GitLab.com to manage the DevOps lifecycle of GitLab itself.&lt;/p&gt;

&lt;p&gt;Our entire company uses GitLab to collaborate on this handbook. We also capture other content and processes in Git repos and manage them with GitLab.&lt;/p&gt;

&lt;p&gt;When something breaks, doesn't work well, or needs improvement, we are more likely to notice it internally and address it before it impacts our larger community.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;37signals went even further, they &lt;a href="https://basecamp.com/about" rel="noopener noreferrer"&gt;build products for themselves first&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;we built Basecamp out of desperate necessity. We needed it bad. Without it, we were embarrassing ourselves.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Dogfooding significantly reduces the information loss in defining &lt;strong&gt;x1&lt;/strong&gt; constraint, building the base for problem solving. When the presupposition of &lt;strong&gt;x1&lt;/strong&gt; constraint is wrong, any investment in problem solving is high-risk.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://study.com/academy/lesson/how-to-define-a-problem-in-engineering.html" rel="noopener noreferrer"&gt;Engineering is problem-solving&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Engineering is all about solving problems using math, science, and technical knowledge. Engineers have solved a lot of problems in the world by designing and building various technologies. We have everything from machines that can breathe for you in hospitals to suspension bridges to cross rivers to computers we use every day. All of these things were once designed by engineers using the engineering design process.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Solution quality depends on the synthesis of the optimal goal and transition based on the chosen constraints.&lt;/p&gt;

&lt;p&gt;Dogfooding culture helps reduce information loss in choosing the most important constraints.&lt;/p&gt;

&lt;p&gt;Additionally, the dogfooding practice reduces ‘work alienation’.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.emerald.com/insight/content/doi/10.1108/CDI-01-2021-0013/full/html#sec001" rel="noopener noreferrer"&gt;This study&lt;/a&gt; discovers the seriousness of the work alienation problem:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;work alienation is defined as a &lt;strong&gt;disengaged, negative and even painful outlook on one's job&lt;/strong&gt;, or simply as “&lt;strong&gt;estrangement or disconnect from work&lt;/strong&gt;”. Unsurprisingly, this state is empirically linked with poor performance, low commitment, career dissatisfaction, substance abuse and turnover intentions, and should therefore be avoided at any cost.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;NB&lt;/strong&gt;: Negative effects of high turnover &lt;a href="https://qase.io/blog/quality-and-turnover/" rel="noopener noreferrer"&gt;are covered here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.semanticscholar.org/paper/Work-centrality-and-work-alienation%3A-distinct-of-a-Hirschfeld-Feild/bee69400b357686741c865f23131dda1134cf9d9" rel="noopener noreferrer"&gt;Another study suggests&lt;/a&gt; that if the employee identifies with the role, they are not alienated:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We believe that people who are extensively committed to work not only identify with the work role, they are also &lt;strong&gt;engaged in the world of work&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Dogfooding reduces alienation of work as the engineer sees and feels how their efforts resolve &lt;em&gt;real&lt;/em&gt; problems, the daily problems they witness.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dogfooding limits of applicability
&lt;/h2&gt;

&lt;p&gt;Any practice has limits of applicability: conditions where the practice is suboptimal or even negatively affects the system.&lt;/p&gt;

&lt;p&gt;Public tender contracts often disallow dogfooding; extensive requirements specification is provided instead.&lt;/p&gt;

&lt;p&gt;Certain domain areas make dogfooding almost impossible or very expensive to practice, e.g.,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;airplanes are not operated by engineers who design and build them&lt;/li&gt;
&lt;li&gt;doctors use medical equipment on patients&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Management needs to check if the dogfooding practice is viable to adapt.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to start
&lt;/h2&gt;

&lt;p&gt;If you decide that dogfooding practice might benefit your company processes and culture, there are two approaches: ‘revolution’ and ‘evolution’.&lt;/p&gt;

&lt;p&gt;Apple used the ‘revolution’ approach in 1981: managers replaced the typewriters in the office with Apple II computers. The employees had no choice but to use the product.&lt;/p&gt;

&lt;p&gt;Enforcing such a change might yield markedly undesired results if company culture resists the change.&lt;/p&gt;

&lt;p&gt;A good example would be the culture of strict specialisation, where people are discouraged from partaking in activities outside their predefined role.&lt;/p&gt;

&lt;p&gt;Introducing dogfooding will require slowly changing this culture. Managers must promote dogfooding and provoke employees’ &lt;a href="https://qase.io/blog/quality-and-interest/" rel="noopener noreferrer"&gt;interest&lt;/a&gt; in using the product.&lt;/p&gt;

&lt;p&gt;Good leaders are role models; showing the employees how the leaders use the product daily might be a good idea.&lt;/p&gt;

&lt;p&gt;The ‘evolution’ approach demands a slow but steady pace. Taking employees’ feedback — and acting upon it — is a must. As soon as people see their voices ignored, dogfooding is doomed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;References&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://study.com/academy/lesson/how-to-define-a-problem-in-engineering.html" rel="noopener noreferrer"&gt;How to Define a Problem in Engineering&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.mcgill.ca/engineeringdesign/step-step-design-process/design-phases-practice/problem-definition" rel="noopener noreferrer"&gt;Problem Definition&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/book/9780815514473" rel="noopener noreferrer"&gt;Engineering Problem Solving&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/315509087_Engineers_Problem_Solving_in_Society" rel="noopener noreferrer"&gt;Engineers: Problem Solving in Society&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://sites.tufts.edu/eeseniordesignhandbook/2013/problem-identification-in-engineering-design/" rel="noopener noreferrer"&gt;Problem Identification in Engineering Design&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.cmu.edu/dietrich/psychology/infant-cognition-lab/publications/Poulin-Dubois%20&amp;amp;%20Rakison%20(1999).pdf" rel="noopener noreferrer"&gt;A theory of implicit and explicit knowledge&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.triz.co.uk/what-is-triz" rel="noopener noreferrer"&gt;TRIZ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://leanscape.io/principles-of-lean-08-gemba-walks/" rel="noopener noreferrer"&gt;Gemba walk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.edume.com/blog/what-is-dogfooding" rel="noopener noreferrer"&gt;Dogfooding&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pdf.sciencedirectassets.com/278653/1-s2.0-S1877705814X00354/1-s2.0-S1877705814034092/main.pdf?X-Amz-Security-Token=IQoJb3JpZ2luX2VjECkaCXVzLWVhc3QtMSJIMEYCIQCfm91vYkmmWv4pKBUj4FWwQxpqo3vh8kYDJm%2FtBnkcowIhAIvJzmHsfnmcIEz%2BSTKQQ8MYz%2Bbj9HohzTD0HQcmtg1LKswECEEQBRoMMDU5MDAzNTQ2ODY1IgzupaSbOUzeZGsvNZIqqQRhJ6cmfpP64rm4I49S%2BQgyUKGp%2BZvuAiaoq6qmHu4wi4N4pT3EPbG3YLHcI06BrEFGPeVCeZAS3VFJW4NX5wNlIjSi2N%2FA%2BOdfIPbFKm9udj8wsYsx0kXnvs0ev8XM2c076UQLP2soLI3jD0RHuecGbtsaOGB0UausVjQsMpoq0nPRPDI9gt7V%2F8I%2BHb0YBCtJQJ0rEQwG7ghgFVO%2Bxqk1eiOJ%2FFctBEQmoA7CXpI%2ByuW%2Boy6zY9VILsR1YNgaJyqoYA0kDXE1EsL%2FW7ONdKp5vWrpFMyF7VYe%2BJo9Qf5wpLIHJzZzEFiETi9bQzZJ%2FKTAQKnANwQ29dnElG1jeT93kqmsEnI%2BMZl3BYPb64NiKKVqGkrPa5tgFQ4dXX%2B0aZ361D5iHyct1mfeaLUsFFBvJlXPUadIuZuDf5RK9JWLaWuKAAocBtgv1PA9YlVlaJiShZZp2dSGIC4RdmdWPFwp2b5EgF3v5Z%2Fx%2FHtp%2FQN4AfLkdCuvbzz%2Fi6qije%2BycWkaRJ2Ya8wT9aQ%2F4BIl%2FTAcwc2tASLKrY8yrlMInpvsR1JowDBd6aLLp9Rl0Rtkawfq1zJA02x4zAo6idmSrGCqNllE%2FJDAgVQmVGp%2Ffn6Nz3kh2q7Bbvuz0hoxkL9CUKn%2B3CyvN4vBIp7qxFALk9uxknUKJrRoRBFr6YGMya1pX%2B3ail6kP0840si5SgxPhAIEWtMBiVsWG%2BsHqJ1u0cxrOU7Pgmy%2FsekGMOfakZwGOqgBD4SEuVWxiUpMfaZGov3HtZw09rUss0%2BHfxVuJnH2lqX0Iob0FmuDq9O4QTiKkyx3hwBCLRgLqSFVlNH2BYoWI93%2FX%2BLXAsPMwqSohBz4weJPuDj6XxHkGIuMxDbyVm9mNqzOKPuofxrd%2BZQCsYKq7K9q5lIHvAruPewtfiLN%2FcW%2FYsgTwic3IvJNVSG2NCtTD2lAUhw2Cyzr4y%2FanhjPs5bxg7LNrPDk&amp;amp;X-Amz-Algorithm=AWS4-HMAC-SHA256&amp;amp;X-Amz-Date=20221128T085642Z&amp;amp;X-Amz-SignedHeaders=host&amp;amp;X-Amz-Expires=300&amp;amp;X-Amz-Credential=ASIAQ3PHCVTYRWMJ3L7B%2F20221128%2Fus-east-1%2Fs3%2Faws4_request&amp;amp;X-Amz-Signature=797f75f65987ba29ffb2e135644312ced1b6da6e8998f27120796831585cc6ce&amp;amp;hash=c102d493794f0b57457b5b58cd947f01f295aa06f154b6146771fd3c6ce15181&amp;amp;host=68042c943591013ac2b2430a89b270f6af2c76d8dfd086a07176afe7c76c2c61&amp;amp;pii=S1877705814034092&amp;amp;tid=spdf-429e6a80-1712-45b1-803b-f81055f01ccb&amp;amp;sid=e78c91272311e240c66acea6a24c1fd61b42gxrqb&amp;amp;type=client&amp;amp;ua=515454500b5b51045a0c&amp;amp;rr=7711e44c9bee959f" rel="noopener noreferrer"&gt;Lean manufacturing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.jstor.org/stable/40396956" rel="noopener noreferrer"&gt;Work alienation: A Pancultural Perspective&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.emerald.com/insight/content/doi/10.1108/CDI-01-2021-0013/full/html" rel="noopener noreferrer"&gt;Predictors of work alienation: differences between hierarchical levels&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.semanticscholar.org/paper/Work-centrality-and-work-alienation%3A-distinct-of-a-Hirschfeld-Feild/bee69400b357686741c865f23131dda1134cf9d9" rel="noopener noreferrer"&gt;Work centrality and work alienation: distinct aspects of a general commitment to work&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: get rid of individual performance reviews</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Wed, 02 Nov 2022 13:14:04 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-get-rid-of-individual-performance-reviews-2937</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-get-rid-of-individual-performance-reviews-2937</guid>
      <description>&lt;p&gt;Most companies practice individual performance reviews (also called &lt;a href="https://en.wikipedia.org/wiki/Performance_appraisal" rel="noopener noreferrer"&gt;performance appraisals&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;This practice is quite well-established even though 40 years management science concluded that this practice caused great damage to the teams in multiple areas.&lt;/p&gt;

&lt;p&gt;I can only guess the reasons why the practice still exists: lack of knowledge and/or &lt;a href="https://rationalwiki.org/wiki/Sunk_cost" rel="noopener noreferrer"&gt;sunk cost fallacy effect&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;W. Edwards Deming condemned performance evaluations as a deadly disease afflicting American management. He argued that performance evaluations nourish fear, encourage short-term thinking, stifle teamwork, and are no better than lotteries.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This article is mostly focused on performance reviews’ detrimental effects on quality.&lt;/p&gt;

&lt;p&gt;Teams have &lt;a href="https://en.wikipedia.org/wiki/Emergence" rel="noopener noreferrer"&gt;emergent&lt;/a&gt; properties, only teams can produce value for the client.&lt;/p&gt;

&lt;p&gt;There’s almost no value in producing &lt;em&gt;something&lt;/em&gt;, companies prosper by producing &lt;em&gt;quality product&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Quality demands effective &lt;a href="https://qase.io/blog/quality-and-information-loss-in-conversion/" rel="noopener noreferrer"&gt;information flow&lt;/a&gt;, the following team characteristics are required too:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://qase.io/blog/quality-and-turnover/" rel="noopener noreferrer"&gt;Low turnover&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://qase.io/blog/quality-knowledge-overlap/" rel="noopener noreferrer"&gt;Constant learning&lt;/a&gt; from peers&lt;/li&gt;
&lt;li&gt;Common goal and &lt;a href="https://qase.io/blog/quality-and-interest/" rel="noopener noreferrer"&gt;common interest in collaborative problem solving&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Focus on teamwork&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All these properties are severely damaged by the individual performance review practice.&lt;/p&gt;

&lt;h2&gt;
  
  
  Low turnover
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Individual performance review practice increases the turnover.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The usual performance assessment is unavoidably subjective:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the assessee in self-presenting their results for a certain period of time&lt;/li&gt;
&lt;li&gt;the assessor in assessing the presented results&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The assessee compiles their self-assessment based on their subjective understanding of the achieved results.&lt;/p&gt;

&lt;p&gt;Assessee’s judgement is clouded even more by a spectrum of biases, from &lt;a href="https://rationalwiki.org/wiki/Dunning%E2%80%93Kruger_effect" rel="noopener noreferrer"&gt;Dunning-Krueger effect&lt;/a&gt; to &lt;a href="https://en.wikipedia.org/wiki/Impostor_syndrome" rel="noopener noreferrer"&gt;Impostor Syndrome&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NB:&lt;/strong&gt; Rationalwiki.org lists &lt;a href="https://rationalwiki.org/wiki/List_of_cognitive_biases" rel="noopener noreferrer"&gt;~90 well-studied cognitive biases&lt;/a&gt; which affect human behaviour, cognition, thinking and decision-making.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NB:&lt;/strong&gt; People are also almost &lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S0191886919302156" rel="noopener noreferrer"&gt;unaware of the strength of the biases’ effect&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The assessor’s reads the compiled self-assessment and rates the results subjectively too.&lt;/p&gt;

&lt;p&gt;Assessor’s judgement is clouded even more by a great number of biases, from &lt;a href="https://www.theknowledge.io/halo-effect/" rel="noopener noreferrer"&gt;Halo effect&lt;/a&gt; to &lt;a href="https://www.statology.org/central-tendency-bias/" rel="noopener noreferrer"&gt;Central tendency bias&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The longer the assessment period, the more clouded, subjective and biased both the assessee’s and the assessor’s judgement is&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Human memory is full of wonders, events are not &lt;em&gt;stored and retrieved&lt;/em&gt; precisely and accurately, but &lt;a href="https://psycnet.apa.org/record/2000-00111-001" rel="noopener noreferrer"&gt;&lt;em&gt;lived through&lt;/em&gt; and &lt;em&gt;changed&lt;/em&gt; every time a person recalls something&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;There’s a separate list of &lt;a href="https://nesslabs.com/memory-bias" rel="noopener noreferrer"&gt;memory biases&lt;/a&gt;, effects which not only &lt;em&gt;cloud&lt;/em&gt; the recalled event, but sometimes &lt;em&gt;change&lt;/em&gt; it quite significantly:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Rosy retrospection bias&lt;/strong&gt;. We tend to remember the past as having been better than it really was, which leads to judging the past disproportionately more positively than we judge the present. As the Romans said: memoria praeteritorum bonorum, or “the past is always well remembered.”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consistency bias&lt;/strong&gt;. We incorrectly remember our past attitudes and behaviour as resembling our present attitudes and behaviour, so we feel like acting in accordance with our general self-image.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mood-congruent memory bias&lt;/strong&gt;. We better recall memories that are consistent with our current mood. For instance, feeling relaxed may bring back relaxing memories; feeling stressed may bring back stressful memories.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hindsight bias&lt;/strong&gt;. We have an inclination to consider past events as being predictable—also called the knew-it-all-along bias.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Egocentric bias&lt;/strong&gt;. We recall the past in a self-serving manner, such as remembering our exam grades as being better than they really were, or remembering a caught fish as bigger than it was.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Availability bias&lt;/strong&gt;. We often think that memories that come readily to mind are more representative than is actually the case. This is why people tend to overestimate the likelihood of attacks by sharks or the number of lottery winners.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Recency effect&lt;/strong&gt;. We best remember the most recently presented information. At a trial, evidence presented last may be the clearest in the juror’s memory.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choice-supportive bias&lt;/strong&gt;. We remember chosen options as having been better than rejected options.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fading affect bias&lt;/strong&gt;. Our emotions associated with unpleasant memories fades more quickly than our emotions associated with pleasant memories.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Confirmation bias&lt;/strong&gt;. Our tendency to seek and interpret memories in a way that confirms our prior hypotheses or personal beliefs.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;To sum it up:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;the assessee&lt;/strong&gt; only &lt;em&gt;believes&lt;/em&gt; they recalled something right (the longer period, the worse)&lt;/li&gt;
&lt;li&gt;this &lt;em&gt;belief&lt;/em&gt; is clouded even more by &lt;strong&gt;the assessee&lt;/strong&gt;’s self-esteem-related and other personality biases&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;the assessor&lt;/strong&gt; perceives the result and tries matching it with &lt;strong&gt;their&lt;/strong&gt; clouded recollection of the events (&lt;em&gt;beliefs&lt;/em&gt;, essentially)&lt;/li&gt;
&lt;li&gt;the matching process is clouded even more by &lt;strong&gt;the assessor&lt;/strong&gt;’s biases&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s almost as if an unknown amount of noise is applied to a signal a few times, where the signal is the event in the assessment, and noise is all the recollection/reformulation/comparison process in the assessee’s and assessor’s brains.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BWtWCI6h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://d36r73waboa44k.cloudfront.net/2022/10/signal-noise.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BWtWCI6h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://d36r73waboa44k.cloudfront.net/2022/10/signal-noise.png" alt="signal-noise image" width="800" height="289"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Does it make any sense to conclude anything based on a result with completely unknown signal-noise ratio?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.emerald.com/insight/content/doi/10.1108/14502191211265334/full/html" rel="noopener noreferrer"&gt;Studies&lt;/a&gt; prove this subjectivism often triggers the feeling of unfairness: the assessee thinks the assessor’s judgement is &lt;em&gt;unfair&lt;/em&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;They [assessments] are in many cases perceived as being procedurally unfair in terms of the Folger and Bies (1989) criteria. Inadequate consideration is given to employee views; there is evidence of bias, inconsistency, poorly justified feedback and a lack of honesty in the process.&lt;/p&gt;

&lt;p&gt;Our research confirms findings that the appraisal reinforces power relationships and is often perceived as being open to abuse&lt;/p&gt;

&lt;p&gt;Dissatisfaction with processes and the resulting distributive justice had a negative impact on employee perceptions of fairness and could act as a barrier to organizational effectiveness&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.researchgate.net/publication/242023658_Satisfaction_with_performance_appraisal_systems_A_study_of_role_perceptions" rel="noopener noreferrer"&gt;Another study once again proves&lt;/a&gt; that people are all different, their memory and judgement is affected by biases &lt;em&gt;differently&lt;/em&gt;, and that there’s almost no way the assessee’s judgement of their work and effort will match the assessor’s judgement.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Judgements about fairness can only ever be based on an individual’s expectations&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Adding to this, people irrationally compare results from the current assessment with the previous ones, as &lt;a href="https://www.researchgate.net/publication/242023658_Satisfaction_with_performance_appraisal_systems_A_study_of_role_perceptions" rel="noopener noreferrer"&gt;this study shows&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Expectations about performance marks, and the comparison of those marks with the previous year, had a very strong influence over levels of satisfaction.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Multiple studies explore the detrimental effects unfairness causes on the productivity, such as this &lt;a href="https://www.tandfonline.com/doi/abs/10.1080/01900692.2021.2009854?journalCode=lpad20" rel="noopener noreferrer"&gt;cross-cultural one&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Our results revealed that both unfairness approaches (OJ and ERI) were positively related to job-burnout and turnover intention&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It makes perfect sense: as performance reviews make people feel that their efforts and results are judged unfairly, the motivation drops and they might consider leaving.&lt;/p&gt;

&lt;p&gt;The situation gets much worse if pay rise is tied to performance reviews.&lt;/p&gt;

&lt;p&gt;It’s a well-known fact that in most companies &lt;a href="https://fortune.com/2019/12/09/companies-not-giving-raises-but-hiring-new-employees-high-paying-jobs/" rel="noopener noreferrer"&gt;newjoiners negotiate higher salaries&lt;/a&gt; compared to existing employees.&lt;/p&gt;

&lt;p&gt;Perceived judgement unfairness in this situation is even stronger — employees might even feel that the whole practice is established to persuade them in their knowledge and skills inferiority and postpone pay rise.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://qase.io/blog/quality-and-interest/" rel="noopener noreferrer"&gt;Loss of interest and motivation&lt;/a&gt;, similarly to &lt;a href="https://qase.io/blog/quality-and-turnover/" rel="noopener noreferrer"&gt;increased turnover&lt;/a&gt;, have detrimental effects on quality.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Focus on teamwork
&lt;/h2&gt;

&lt;p&gt;In case the employee is somehow still motivated to stay and work in the company, performance reviews’ focus on &lt;em&gt;individual contribution&lt;/em&gt; will shift employee’s focus from collaborative team work to achieving what’s exactly measured.&lt;/p&gt;

&lt;p&gt;Good bye teamwork, hello &lt;a href="https://en.wikipedia.org/wiki/Goodhart%27s_law" rel="noopener noreferrer"&gt;Goodhart’s law&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When a measure becomes a target, it ceases to be a good measure&lt;/p&gt;

&lt;p&gt;Every measure which becomes a target becomes a bad measure – is inexorably, if ruefully, becoming recognized as one of the overriding laws of our times. Ruefully, for this law of the unintended consequence seems so inescapable. But it does so, I suggest, because it is the inevitable corollary of that invention of modernity: accountability&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As soon as the employee is focused on improving the individual contribution measured in the assessment, quality decreases because:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the employee loses the motivation to help others, to teach and learn&lt;/li&gt;
&lt;li&gt;the employee focuses only on what’s measured&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While, as Dr. Deming says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the most important figures that one needs for management are unknown or unknowable, but successful management must nevertheless take account of them.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;All the effort managers and employees spend on executing the practice is &lt;em&gt;waste&lt;/em&gt;, it simply could be spent on improving the system.&lt;/p&gt;

&lt;p&gt;There’s a beautiful thought experiment illustrating Dr. Deming’s ‘95/5 rule’:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“95% of variation in the performance of a system is caused by the system itself; only 5% is caused by the people.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/ckBfbvOXDvU"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;The original goal of the individual performance reviews was to boost the teams productivity and yet the practice:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;focuses on individuals, reducing the teams to mere groups of competing individuals&lt;/li&gt;
&lt;li&gt;generates stress for everyone&lt;/li&gt;
&lt;li&gt;negatively impacts motivation and interest&lt;/li&gt;
&lt;li&gt;increases turnover&lt;/li&gt;
&lt;li&gt;brings the feeling of unfairness&lt;/li&gt;
&lt;li&gt;focuses people on what’s measured, distorting the system&lt;/li&gt;
&lt;li&gt;simply wastes money&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Samantha Evans and Dennis Tourish beautifully coined this in their study ‘&lt;a href="https://journals.sagepub.com/doi/full/10.1177/1350507616672736" rel="noopener noreferrer"&gt;Agency theory and performance appraisal: How bad theory damages learning and contributes to bad management practice&lt;/a&gt;’:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;conventional appraisals prioritise hierarchy over intrinsic motivation, distrust over trust, and the importance of individual effort over that of building sustainable, co-operative systems.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;References&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://journals.sagepub.com/doi/full/10.1177/1350507616672736" rel="noopener noreferrer"&gt;Agency theory and performance appraisal: How bad theory damages learning and contributes to bad management practice&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.emerald.com/insight/content/doi/10.1108/02656710510617238/full/html" rel="noopener noreferrer"&gt;Conflict between theory and practice: TQM and performance appraisal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/0099133394900086" rel="noopener noreferrer"&gt;Performance evaluation: A deadly disease?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.amazon.com/gp/product/B00E28QA1Y/ref=dbs_a_def_rwt_hsch_vapi_taft_p1_i2" rel="noopener noreferrer"&gt;The Team Handbook Third Edition 3rd (third) Edition by Scholtes, Peter R, Joiner, Brian L., Streibel, Barbara J published by Oriel Inc (2003)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://rationalwiki.org/wiki/Sunk_cost" rel="noopener noreferrer"&gt;Sunk cost fallacy effect&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.narbonbd.com/download/UNPACKING_THE_NOTION_OF_SUBJECTIVITY.pdf" rel="noopener noreferrer"&gt;Unpacking the notion of subjectivity: Performance evaluation and supervisor discretion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/228178666_Determinants_and_Effects_of_Subjectivity_in_Incentives" rel="noopener noreferrer"&gt;Determinants and Effects of Subjectivity in Incentives&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tandfonline.com/doi/pdf/10.1080/14783363.2019.1591946" rel="noopener noreferrer"&gt;Exploring the emergent quality management paradigm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pure.uva.nl/ws/files/4352303/60410_greer5.pdf" rel="noopener noreferrer"&gt;The Effects of Conflict Types, Dimensions, and Emergent States on Group Outcomes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://psycnet.apa.org/record/2006-12062-001" rel="noopener noreferrer"&gt;Ties, Leaders, and Time in Teams: Strong inference about network structure's effects on team viability and performance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hbr.org/1998/03/the-set-up-to-fail-syndrome" rel="noopener noreferrer"&gt;The Set-Up-To-Fail Syndrome&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.jstor.org/stable/256068" rel="noopener noreferrer"&gt;A Closer Look at Halo Error in Performance Ratings&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://iaap-journals.onlinelibrary.wiley.com/doi/abs/10.1111/apps.12313" rel="noopener noreferrer"&gt;Subjectivity in fairness perceptions: How heuristics and self-efficacy shape the fairness expectations and perceptions of organisational newcomers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://journals.sagepub.com/doi/10.1177/1059601119837045" rel="noopener noreferrer"&gt;When Everyone Works Harder for Fewer Rewards, Is It Fair? Implications of “Organization-Wide Hardship” for Managing and Studying Organizational Fairness&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.nobelprize.org/uploads/2018/06/kahnemann-lecture.pdf" rel="noopener noreferrer"&gt;MAPS OF BOUNDED RATIONALITY: A PERSPECTIVE ON INTUITIVE JUDGMENT AND CHOICE&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S0191886919302156" rel="noopener noreferrer"&gt;Prejudiced and unaware of it: Evidence for the Dunning-Kruger model in the domains of racism and sexism&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://journals.lww.com/academicmedicine/fulltext/2009/10001/the_effects_of_acute_stress_on_performance_.8.aspx" rel="noopener noreferrer"&gt;The Effects of Acute Stress on Performance: Implications for Health Professions Education&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://psycnet.apa.org/record/2001-14774-001" rel="noopener noreferrer"&gt;An exploratory analysis of salesperson perceptions of the criteria used in performance appraisals, job satisfaction and organizational commitment.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://sci-hub.hkvisa.net/10.1002/hrm.10021" rel="noopener noreferrer"&gt;AN EXPLORATORY ASSESSMENT OF THE PURPOSES OF PERFORMANCE APPRAISALS IN NORTH AND CENTRAL AMERICA AND THE PACIFIC RIM&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.emerald.com/insight/content/doi/10.1108/14502191211265334/full/html" rel="noopener noreferrer"&gt;Organizational justice and performance: is appraisal fair?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/242023658_Satisfaction_with_performance_appraisal_systems_A_study_of_role_perceptions" rel="noopener noreferrer"&gt;Satisfaction with performance appraisal systems: A study of role perceptions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://psycnet.apa.org/record/2000-00111-001" rel="noopener noreferrer"&gt;A brief history of memory research&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tandfonline.com/doi/abs/10.1080/01900692.2021.2009854?journalCode=lpad20" rel="noopener noreferrer"&gt;Unfairness and Stress—An Examination of Two Alternative Models: Organizational-Justice and Effort–Reward Imbalance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.anzam.org/wp-content/uploads/pdf-manager/2356_CARTER_GEOFF_HRM-56.PDF" rel="noopener noreferrer"&gt;Performance appraisal: Stressful for some.&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: turnover effect</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Tue, 18 Oct 2022 14:49:26 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-turnover-effect-126d</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-turnover-effect-126d</guid>
      <description>&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Turnover_(employment)" rel="noopener noreferrer"&gt;Turnover&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;turnover is the act of replacing an employee with a new employee&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Since 1983 detrimental effects that companies suffer from high turnover have been studied quite a lot.&lt;/p&gt;

&lt;p&gt;First and foremost, high turnover cost companies a fortune.&lt;/p&gt;

&lt;p&gt;Popular sources like Gallup publish alarming articles like &lt;a href="https://www.gallup.com/workplace/247391/fixable-problem-costs-businesses-trillion.aspx" rel="noopener noreferrer"&gt;this one&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A trillion dollars.&lt;/p&gt;

&lt;p&gt;That's what U.S. businesses are losing every year due to voluntary turnover. And the most astounding part is that most of this damage is self-inflicted.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The American think tank &lt;a href="https://en.wikipedia.org/wiki/Center_for_American_Progress" rel="noopener noreferrer"&gt;‘The Center for American Progress’&lt;/a&gt; published a more thorough &lt;a href="https://www.scribd.com/document/112707536/There-Are-Significant-Business-Costs-to-Replacing-Employees" rel="noopener noreferrer"&gt;meta-study&lt;/a&gt; where they reviewed 11 relevant research papers on the cost of employee turnover. Here’s the quote:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Very highly paid jobs ... tend to have disproportionately high turnover costs as a percentage of salary (up to 213 percent)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;NB&lt;/strong&gt;: ‘very highly paid’ they consider jobs yielding up to $200 000 per annum&lt;/p&gt;

&lt;p&gt;So for every employee who’s gone, the overall price the company pays might be as high as twice his yearly salary.&lt;/p&gt;

&lt;p&gt;It’s pretty easy to calculate the direct turnover costs, I suggest you do this too. Just factor in the following expenditures (taken from &lt;a href="https://www.scribd.com/document/112707536/There-Are-Significant-Business-Costs-to-Replacing-Employees" rel="noopener noreferrer"&gt;the study mentioned above&lt;/a&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;‘separation’ costs: exit interviews, severance pay&lt;/li&gt;
&lt;li&gt;temporary cover costs&lt;/li&gt;
&lt;li&gt;replacement costs: advertising, agency fees, hiring (screening / interview / selection / bg-checks / signup bonus / relocation costs)&lt;/li&gt;
&lt;li&gt;training costs&lt;/li&gt;
&lt;li&gt;costs incurred as the new employee learns their job, including reduced quality, errors, and waste&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You will find the last cost (associated with the quality loss) quite hard to measure. Maybe you can count the number of defects increased as folks did in &lt;a href="https://pubsonline.informs.org/doi/abs/10.1287/mnsc.2022.4311" rel="noopener noreferrer"&gt;this study&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Despite the manufacturer’s extensive quality control efforts, including stringent testing, each percentage point increase in the weekly rate of workers quitting from an assembly line (its weekly worker turnover) is found to increase field failures by 0.74%–0.79%.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But stats like this can be collected only for cases when there’s a clear separability between the production and consumption of manufactured goods. This separability allows insulating the productive operations from many environmental disturbances.&lt;/p&gt;

&lt;p&gt;So I would say that the detrimental effect that high turnover causes on quality should be considered an &lt;em&gt;indirect turnover cost&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Moreover, software development is an industry with a high proportion of intellectual labour, and software product quality highly depends on employees’ cognitive skills and emotions.&lt;/p&gt;

&lt;p&gt;High turnover detrimental effects on knowledge, motivation and emotions are &lt;em&gt;indirect turnover costs&lt;/em&gt;. &lt;a href="https://www.scribd.com/document/112707536/There-Are-Significant-Business-Costs-to-Replacing-Employees" rel="noopener noreferrer"&gt;This study&lt;/a&gt; categorises these indirect turnover costs like so:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lost productivity for the departing employee&lt;/li&gt;
&lt;li&gt;Lost productivity due to the need to hire temporary employees&lt;/li&gt;
&lt;li&gt;Coping with a vacancy or giving additional work to other employees&lt;/li&gt;
&lt;li&gt;Costs incurred as the new employee learns their job, including reduced quality, errors, and waste&lt;/li&gt;
&lt;li&gt;Damaged employer brand&lt;/li&gt;
&lt;li&gt;Reduced morale&lt;/li&gt;
&lt;li&gt;Lost clients and lost institutional knowledge&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’ve written articles on how &lt;a href="https://qase.io/blog/quality-and-information-loss-in-conversion/" rel="noopener noreferrer"&gt;information flow efficiency&lt;/a&gt;, &lt;a href="https://qase.io/blog/quality-and-team-design/" rel="noopener noreferrer"&gt;emotions&lt;/a&gt;, &lt;a href="https://qase.io/blog/quality-knowledge-overlap/" rel="noopener noreferrer"&gt;knowledge&lt;/a&gt;, &lt;a href="https://qase.io/blog/quality-and-management-complexity/" rel="noopener noreferrer"&gt;feedback style&lt;/a&gt; and &lt;a href="https://qase.io/blog/quality-and-interest/" rel="noopener noreferrer"&gt;interest&lt;/a&gt; influence quality. To me, it’s quite evident that with every person leaving the team, &lt;em&gt;all&lt;/em&gt; these areas suffer, rendering the quality worse.&lt;/p&gt;

&lt;p&gt;What makes things worse — there’s no way to measure precisely how much worse the quality gets, all we know: it gets worse.&lt;/p&gt;

&lt;p&gt;So what exactly happens to a team when its member leaves?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;team communication graph is shattered, new connections are to be established and normalised&lt;/li&gt;
&lt;li&gt;team morale is shattered, and social dynamics of fear/uncertainty emerge&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When an employee leaves the team, the team is destroyed and the new one is to be assembled.&lt;/p&gt;

&lt;p&gt;In some cases, the cost of reassembling the team is low (say, when the team knew and welcomed the employee’s departure); sometimes, it’s ridiculously high (say, the informal leader of the team got sacked) and can even cause others to leave or consider leaving.&lt;/p&gt;

&lt;p&gt;In any case, as the quality depends much on information flow efficiency, it seems obvious that the quality-focused strategy should imply serious efforts invested into retaining the team.&lt;/p&gt;

&lt;p&gt;And as Dr. Deming said:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the most important figures that one needs for management are unknown or unknowable, but successful management must nevertheless take account of them.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;References:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.scribd.com/document/112707536/There-Are-Significant-Business-Costs-to-Replacing-Employees" rel="noopener noreferrer"&gt;There Are Significant Business Costs To Replacing Employees&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S0010880400800130" rel="noopener noreferrer"&gt;The cost of turnover: Putting a price on the learning curve&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://journals.sagepub.com/doi/abs/10.1177/001088048302400216" rel="noopener noreferrer"&gt;Strategies for Managing Employee Turnover&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubsonline.informs.org/doi/abs/10.1287/mnsc.2022.4311" rel="noopener noreferrer"&gt;The Hidden Cost of Worker Turnover: Attributing Product Reliability to the Turnover of Factory Workers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/323835309_Employee_Retention_and_Turnover_in_Global_Software_Development_Comparing_In-house_Offshoring_and_Offshore_Outsourcing" rel="noopener noreferrer"&gt;Employee Retention and Turnover in Global Software Development: Comparing In-house Offshoring and Offshore Outsourcing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.emerald.com/insight/content/doi/10.1108/01425450710826131/full/html" rel="noopener noreferrer"&gt;Psychological climate and individual performance in India: test of a mediated model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ieeexplore.ieee.org/document/5691528" rel="noopener noreferrer"&gt;Effect of employees' turnover rate on industrial firms' production efficiency: A conceptual model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/profile/Dost-Khan-5/publication/290883788_The_Impact_of_Employees%27_Turnover_at_the_Productivity_of_a_Software/links/586b5fa008ae6eb871bb449d/The-Impact-of-Employees-Turnover-at-the-Productivity-of-a-Software.pdf" rel="noopener noreferrer"&gt;The Impact of Employees’ Turnover at the Productivity of a Software&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/209835787_A_review_of_the_literature_on_employee_turnover" rel="noopener noreferrer"&gt;A review of the literature on employee turnover&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/pulse/how-understand-roi-investing-people-maia-josebachvili/" rel="noopener noreferrer"&gt;How to understand the ROI of investing in People&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.huffpost.com/entry/how-much-does-employee-turnover-really-cost_b_587fbaf9e4b0474ad4874fb7" rel="noopener noreferrer"&gt;How Much Does Employee Turnover Really Cost?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/264806385_Turnover_and_Knowledge_Loss_An_Examination_of_the_Differential_Impact_of_Production_Manager_and_Worker_Turnover_in_Service_and_Manufacturing_Firms" rel="noopener noreferrer"&gt;Turnover and Knowledge Loss: An Examination of the Differential Impact of Production Manager and Worker Turnover in Service and Manufacturing Firms&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/274693943_VOLUNTARY_TURNOVER_AND_ORGANIZATIONAL_PERFORMANCE" rel="noopener noreferrer"&gt;VOLUNTARY TURNOVER AND ORGANIZATIONAL PERFORMANCE&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://psycnet.apa.org/doiLanding?doi=10.1037%2Fh0022100" rel="noopener noreferrer"&gt;Developmental sequence in small groups.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://psycnet.apa.org/doiLanding?doi=10.1037%2F1089-2699.4.1.81" rel="noopener noreferrer"&gt;From I to we: Social identity and the collective self.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://apps.dtic.mil/dtic/tr/fulltext/u2/a493549.pdf" rel="noopener noreferrer"&gt;Acquisition Community Team Dynamics: The Tuckman Model vs. the DAU Model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://curiouscat.com/management/deming/managewhatyoucantmeasure" rel="noopener noreferrer"&gt;Manage what you can't measure&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: emotions and interest</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Tue, 11 Oct 2022 09:15:19 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-emotions-and-interest-2igm</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-emotions-and-interest-2igm</guid>
      <description>&lt;p&gt;As I’ve said in the &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj"&gt;first article&lt;/a&gt;, quality strongly depends on the efficiency of the information flow in the system — the more effective the information flow is, the less loss occurs, and the higher the quality.&lt;/p&gt;

&lt;p&gt;Efficient information flow implies that parties perform a &lt;a href="https://link.springer.com/referenceworkentry/10.1007/978-94-007-0753-5_426" rel="noopener noreferrer"&gt;cognitive function&lt;/a&gt; well:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Cognitive function is a broad term that refers to mental processes involved in the acquisition of knowledge, manipulation of information, and reasoning. Cognitive functions include the domains of perception, memory, learning, attention, decision making, and language abilities.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;People need to be able to communicate, learn, make decisions, etc.&lt;/p&gt;

&lt;p&gt;The current scientific body of knowledge states that emotions affect cognitive functions, and I’m devoting this article to the topic of emotions.&lt;/p&gt;

&lt;p&gt;As &lt;a href="https://www.frontiersin.org/articles/10.3389/fpsyg.2017.01454/full" rel="noopener noreferrer"&gt;one study&lt;/a&gt; says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Emotion has a substantial influence on the cognitive processes in humans, including perception, attention, learning, memory, reasoning, and problem solving. Emotion has a particularly strong influence on attention, especially modulating the selectivity of attention as well as motivating action and behavior. This attentional and executive control is intimately linked to learning processes, as intrinsically limited attentional capacities are better focused on relevant information. Emotion also facilitates encoding and helps retrieval of information efficiently.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As &lt;a href="https://www.jstor.org/stable/30039069" rel="noopener noreferrer"&gt;another study&lt;/a&gt; shows a strong correlation of the level of emotion positivity and memory performance:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;In two experiments, context memory performance was disrupted when words were presented during negatively valenced film clips, whereas it was enhanced when words were presented during arousing film clips. Free recall of&lt;br&gt;
words presented during the negatively valenced films was also disrupted. These findings suggest multiple influences of emotion on memory performance.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/10467897/" rel="noopener noreferrer"&gt;And another one&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Positive affect systematically influences performance on many cognitive tasks.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/24237485/" rel="noopener noreferrer"&gt;And another one&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;positive emotional states could reduce switch costs and enhance both types of creative performances&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S1057740801703129" rel="noopener noreferrer"&gt;And another one&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This article reviews evidence indicating that, in most circumstances, positive affect enhances problem solving and decision making, leading to cognitive processing that is not only flexible, innovative, and creative, but also thorough and efficient&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/18954157/" rel="noopener noreferrer"&gt;And another one&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Creativity is enhanced most by positive mood states that are activating and associated with an approach motivation and promotion focus (e.g., happiness)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As you see, a growing body of scientific knowledge proves that positive emotions improve cognition, creativity, memory efficiency, etc. (while negative emotions and stress have a detrimental effect on cognitive function and memory).&lt;/p&gt;

&lt;p&gt;Most companies and HR have long since started investing in employee &lt;a href="https://dictionary.cambridge.org/dictionary/english/well-being" rel="noopener noreferrer"&gt;well-being&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the state of feeling healthy and happy&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The 2021 HR Sentiment Survey &lt;a href="https://futureworkplace.com/ebooks/2021-hr-sentiment-survey/" rel="noopener noreferrer"&gt;found&lt;/a&gt; that 68% of senior HR leaders rated employee well-being and mental health as top priorities. Companies now seem to have started understanding the importance of investing in positive emotions.&lt;/p&gt;

&lt;p&gt;While I fully support the management initiatives focused at providing decent work condition, health support and perks of all sorts, I do believe that the cornerstone is missing — there’s no proper attention to a certain feeling which is &lt;strong&gt;very positive&lt;/strong&gt;, &lt;strong&gt;crucial&lt;/strong&gt; to the software development and inherently important to homo sapiens striving — &lt;strong&gt;&lt;a href="https://en.wikipedia.org/wiki/Interest_(emotion)" rel="noopener noreferrer"&gt;interest&lt;/a&gt;&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;a feeling or emotion that causes attention to focus on an object, event, or process&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Designing the team culture and processes so that the interest is provoked seems quite a good idea for the company.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You often see the promise of ‘interesting tasks’ and ‘hard problems’ in the job description companies post, but rarely do they fulfill the promise.&lt;/p&gt;

&lt;p&gt;At this moment, I usually hear, ‘yeah, but it’s impossible to make work interesting for everyone’.&lt;/p&gt;

&lt;p&gt;And yet we get paid to solve users’ problems. There is no need to invent complicated ‘interesting’ tasks; we need to allow people a certain amount of exploratory freedom.&lt;/p&gt;

&lt;p&gt;Engineering interest is solving problems, not doing tasks: if I assign you a task ‘code me this form’ or ‘paint the button red’, chances are you will consider these assignments boring as soon as you have finished a few hundred.&lt;/p&gt;

&lt;p&gt;If instead, you gave me the user’s original problem or, even better, facilitated our dialogue, the user would tell me the problem, and suddenly solving the problem would be much more interesting.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--a1MTNv8z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://upload.wikimedia.org/wikipedia/commons/a/a2/Interest_%2528emotion%2529.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--a1MTNv8z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://upload.wikimedia.org/wikipedia/commons/a/a2/Interest_%2528emotion%2529.jpg" alt="This is an image" width="400" height="511"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I think you all must remember the pure joy of discovery amusement — where you suddenly realise how a certain problem can be solved.&lt;/p&gt;

&lt;p&gt;Imagine your working day mainly consisted of problem-solving and discoveries, but not of tedious tasks.&lt;/p&gt;

&lt;p&gt;And what’s even more peculiar:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The motivational function of interest extends to activities that are not inherently interesting or appealing. Interest can bolster motivation to complete tasks that are boring and tedious&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If the team is &lt;strong&gt;interested&lt;/strong&gt; in solving a problem, ‘boring’ tasks are not demotivating anymore.&lt;/p&gt;

&lt;p&gt;In addition, there’s a great benefit in having a diverse team — a team of people of different levels of expertise and different specialisation.&lt;/p&gt;

&lt;p&gt;Chances are some team members never tried solving a particular type of problem: what can be boring to a senior developer might as well be of great novelty to the junior one. If properly done, &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-knowledge-overlap-2nh9"&gt;learning as well as teaching&lt;/a&gt; is a thrill.&lt;/p&gt;

&lt;p&gt;There’s also a great benefit in organisational agility regarding roles: if a backend developer wants to learn some frontend to help the team solve the user’s problem, welcome it, and don’t force specialisation, knowledge overlap helps the team build things better.&lt;/p&gt;

&lt;p&gt;There’s a great book — &lt;a href="https://www.amazon.com/Exploring-Psychology-Interest-Paul-Silvia/dp/0195158555" rel="noopener noreferrer"&gt;Exploring the psychology of interest&lt;/a&gt;, and here’s a few quotes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Izard and Ackerman (2000) suggest a motivational function—“interest motivates exploration and learning, and guarantees the person's engagement in the environment&lt;/p&gt;

&lt;p&gt;Diverse areas of research demonstrate beneficial motivational effects of interest. Studies of successful adolescents indicate that “undivided interest” promotes the growth of expertise (Rathunde, 1996, 1998, 2001)&lt;/p&gt;

&lt;p&gt;research, reviewed in chapter 3, shows that people process texts more deeply and remember the material more accurately when the texts are interesting (Hidi, 2000; Schiefele, 1999)&lt;/p&gt;

&lt;p&gt;interest is adaptive because it motivates people to develop diverse experiences that can be helpful when unforeseen events occur (Fredrickson, 1998).&lt;/p&gt;

&lt;p&gt;The broaden-and-build model of positive emotions (Fredrickson, 1998, 2001) proposes that interest, like other positive emotions, lacks short-term functions associated with survival. Instead, interest serves long-term developmental goals: curiosity about the new and the possible broadens experiences and attracts people to new possibilities. The broaden-and-build model suggests that interest cultivates diverse experience by orienting people to new and unusual events and facilitates the growth of competence by motivating sustained activity in a specific area.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;To sum it up&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;interest is of essential value to the team morale, motivation, and performance&lt;/li&gt;
&lt;li&gt;interest bolsters cognitive functions, creativity, learning, and growth&lt;/li&gt;
&lt;li&gt;interest is provoked by novelty and problem solving, so don’t give tasks; help the team solve problems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;References:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://asset-pdf.scinapse.io/prod/2063372382/2063372382.pdf" rel="noopener noreferrer"&gt;Basic Emotions, Relations Among Emotions, and Emotion-Cognition Relations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.frontiersin.org/articles/10.3389/fpsyg.2017.01454/full" rel="noopener noreferrer"&gt;The Influences of Emotion on Learning and Memory&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/30792896/" rel="noopener noreferrer"&gt;Learning and memory under stress: implications for the classroom&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.jstor.org/stable/30039069" rel="noopener noreferrer"&gt;Influences of Emotion on Context Memory while Viewing Film Clips&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S0166432897860421" rel="noopener noreferrer"&gt;Interaction of neuromodulatory systems in modulating memory storage&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.frontiersin.org/articles/10.3389/fpsyg.2017.01832/full" rel="noopener noreferrer"&gt;Positive Emotion Facilitates Cognitive Flexibility: An fMRI Study&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S1057740801703129" rel="noopener noreferrer"&gt;An Influence of Positive Affect on Decision Making in Complex Situations: Theoretical Issues With Practical Implications&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/21852891/" rel="noopener noreferrer"&gt;Positive emotions broaden the scope of attention and thought-action repertoires&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/18444736/" rel="noopener noreferrer"&gt;Hedonic tone and activation level in the mood-creativity link: toward a dual pathway to creativity model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/18954157/" rel="noopener noreferrer"&gt;A meta-analysis of 25 years of mood-creativity research: hedonic tone, activation, or regulatory focus?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubmed.ncbi.nlm.nih.gov/18211173/" rel="noopener noreferrer"&gt;I want to be creative: exploring the role of hedonic contingency theory in the positive mood-cognitive flexibility link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.amazon.com/Exploring-Psychology-Interest-Paul-Silvia/dp/0195158555" rel="noopener noreferrer"&gt;Exploring the Psychology of Interest&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.taylorfrancis.com/books/mono/10.4324/9781315807430/role-interest-learning-development-ann-renninger-suzanne-hidi-andreas-krapp-ann-renninger" rel="noopener noreferrer"&gt;The Role of interest in Learning and Development&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://academic.oup.com/cercor/article/10/3/295/449599" rel="noopener noreferrer"&gt;Emotion, Decision Making and the Orbitofrontal Cortex&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://psycnet.apa.org/record/2000-05930-001" rel="noopener noreferrer"&gt;Self-organization of discrete emotions, emotion patterns, and emotion–cognition relations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: management complexity</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Mon, 03 Oct 2022 18:03:01 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-management-complexity-4m8n</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-management-complexity-4m8n</guid>
      <description>&lt;p&gt;Every manager does their own bit of people management at work, even though many don’t realise it.&lt;/p&gt;

&lt;p&gt;Some call it leadership; some call it just management.&lt;/p&gt;

&lt;p&gt;By definition, people management is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the practice of recruiting, training, engaging and retaining employees to optimize their talent and maximize their productivity&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Essentially you as an EM assemble, manage and maintain a productive team.&lt;/p&gt;

&lt;p&gt;You will undoubtedly recall thinking, ‘will Julie be capable of doing this task, or will she need mentorship?’ or ‘do we need another frontend developer?’ or ‘what happens with our testing when Mark goes on vacation?’.&lt;/p&gt;

&lt;p&gt;All these questions are a day-to-day routine of an EM.&lt;/p&gt;

&lt;p&gt;And the more people you have, the more managerial complexity you get.&lt;/p&gt;

&lt;p&gt;Managerial complexity is essentially the mental effort price you pay for managing the team. You have to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;plan your team capacity and decide on hiring if needed&lt;/li&gt;
&lt;li&gt;interviewing, hiring, and onboarding&lt;/li&gt;
&lt;li&gt;providing training and supporting employees with mentorship&lt;/li&gt;
&lt;li&gt;building, assessing, and adapting processes&lt;/li&gt;
&lt;li&gt;providing transparency on goals and mission&lt;/li&gt;
&lt;li&gt;maintaining the engineering culture&lt;/li&gt;
&lt;li&gt;creating and managing a supportive atmosphere and dealing with conflicts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And it seems evident that the more people you have, the more effort you need to put in.&lt;/p&gt;

&lt;p&gt;It’s quite a popular question among the fresh EMs — ‘how do I cope with so many 1-1s?’. Some people even try to automate what should never be automated — humane and honest communication — by creating ‘1-1 scripts’.&lt;/p&gt;

&lt;p&gt;The popularity of this question confirms what I’ve stated in the &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-size-2g34"&gt;previous article&lt;/a&gt; — it’s tough to sustain the managerial complexity of a team of more than 6-7 developers &lt;em&gt;working on tasks individually.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I postulate that this limit is caused by ‘synchronisation costs’. Whenever you rely on individuals interpreting things, you have to bear in mind that there’s a high cost of synchronisation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Every single person has their perception and understanding of every single task. I covered this in &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj"&gt;my article on information loss&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Whenever people synchronise upon the significant work bit ‘finished’ (significant effort applied by the individual based on their understanding and perception), clash and frustration are inevitable: we always associate ourselves personally with the results of our work. And there are no measures to diminish the frustration fully: once it appears, it never can be erased. I covered this psychological issue in &lt;a href="https://hackernoon.com/code-review-its-bad-expensive-and-ineffective-in-most-cases" rel="noopener noreferrer"&gt;my article on code review&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most work conflicts results from the clash or tension derived from this.&lt;/p&gt;

&lt;p&gt;Try recalling examples of people changing attitudes to each other due to the synchronisation failure: ‘your code is bad’.&lt;/p&gt;

&lt;p&gt;There are so many articles offering you a way to provide non-toxic / non-offensive negative feedback, so many strategies (&lt;a href="https://www.makeitinua.com/posts/the-feedback-sandwich-method-in-digital-2021-pros-and-cons" rel="noopener noreferrer"&gt;sandwich technique&lt;/a&gt;, &lt;a href="https://steemit.com/steemiteducation/@dkmathstats/constructive-criticism-and-feedback-critique-the-work-not-the-person" rel="noopener noreferrer"&gt;critique the work not the person&lt;/a&gt;) to provide palliative treatment to the issue.&lt;/p&gt;

&lt;p&gt;But, as Harold F. Dodge said:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You can not inspect quality into a product.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Providing any feedback after the synchronisation failure is late.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Quality is assured before the defect appears.&lt;/p&gt;

&lt;p&gt;Synchronisation issues are better prevented, and not dealt with.&lt;/p&gt;

&lt;p&gt;And the only way to prevent synchronisation issues — surprisingly the same way which allows having more people on the team while retaining the quality and speed — &lt;a href="https://martinfowler.com/articles/on-pair-programming.html" rel="noopener noreferrer"&gt;pair programming&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Pair programming essentially means that two people write code together on one machine. It is a very collaborative way of working and involves a lot of communication. While a pair of developers work on a task together, they do not only write code, they also plan and discuss their work. They clarify ideas on the way, discuss approaches and come to better solutions.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If you employ this approach, you get the following benefits:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;synchronisation costs are twice less&lt;/li&gt;
&lt;li&gt;team performance increases&lt;/li&gt;
&lt;li&gt;the number of defects decreases significantly&lt;/li&gt;
&lt;li&gt;better psychological safety in the team&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As two (or more) people work simultaneously on one task, they employ a constant feedback paradigm meaning that there’s no ‘significant effort’ wasted (&lt;a href="https://en.wikipedia.org/wiki/Sunk_cost" rel="noopener noreferrer"&gt;sunk cost fallacy&lt;/a&gt; doesn’t kick in). There’s no reason for the conflict inside the pair.&lt;/p&gt;

&lt;p&gt;And when the pair produces something which is not accepted by the whole team, they stand together, and therefore the individuals are not that hurt (‘there’s always someone on your side’).&lt;/p&gt;

&lt;p&gt;Surprisingly, pair programming also means higher team productivity, quicker and easier learning and knowledge sharing, low-cost onboarding of new members, almost the best interview efficiency, easy sharing of the goals and the mission, and spreading and maintaining good engineering culture.&lt;/p&gt;

&lt;p&gt;A few studies back my thesis up:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://collaboration.csc.ncsu.edu/laurie/Papers/XPSardinia.PDF" rel="noopener noreferrer"&gt;The Costs and Benefits of Pair Programming&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Using interviews and controlled experiments, the authors investigated the costs and benefits of pair programming. They found that for a development-time cost of about 15%, pair programming improves design quality, reduces defects, reduces staffing risk, enhances technical skills, improves team communications and is considered more enjoyable at statistically significant levels.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.researchgate.net/publication/27295641_The_Case_for_Collaborative_Programming" rel="noopener noreferrer"&gt;The Case for Collaborative Programming&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A field experiment was conducted using experienced programmers who worked on a challenging problem important to their organization, in their own environments, and with their own equipment. Findings revealed that all the teams outperformed the individual programmers, enjoyed the problem-solving process more, and had greater confidence in their solutions.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://files.eric.ed.gov/fulltext/EJ1140923.pdf" rel="noopener noreferrer"&gt;Evaluating Effectiveness of Pair Programming as a Teaching Tool in Programming Courses&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Findings suggest that the more students are involved in this activity, the more they enjoy it and the more they learn by collaborating with their partners. When comparing different effectiveness measures, their perceived learning, quality of work, and enjoyment during than increased productivity outcome.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;To sum it up, the studies I mentioned in &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-size-2g34"&gt;the previous article&lt;/a&gt; proved that the optimal number of people on the team working on individual tasks is 6-7.&lt;/p&gt;

&lt;p&gt;Here I hypothesise that with pair/mob programming you can almost double the number of people on the team, let them do things in rotating pairs or a mob, and with that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reduce the synchronisation costs&lt;/li&gt;
&lt;li&gt;double the speed of the team&lt;/li&gt;
&lt;li&gt;improve the quality of the product you’re building significantly&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Essentially, with pair/mob you are getting your team to become a good team, not a group of individuals, so no wonder why you can get so many benefits. These all are called ‘emergent qualities of the team’.&lt;/p&gt;

&lt;p&gt;Try it out for yourself. I suggest employing pair programming in your team, and only then think about increasing the number of people.&lt;/p&gt;

&lt;p&gt;P.S. What’s even more interesting is that there’s a huge body of thought on an ‘&lt;a href="https://hal.archives-ouvertes.fr/hal-00904097/" rel="noopener noreferrer"&gt;interactionist account of reasoning&lt;/a&gt;'. Scientists are seriously considering that the human brain is not well-suited for individual reasoning and that humans can rationalise much better together.&lt;/p&gt;

&lt;p&gt;There’s a great example: the so-called &lt;a href="https://www.philosophyexperiments.com/wason/Default.aspx" rel="noopener noreferrer"&gt;Wason Selection task&lt;/a&gt; — a seemingly simple task that reveals how irrational most human beings are individually. And there’s a &lt;a href="https://pubsonline.informs.org/doi/abs/10.1287/mnsc.1120.1668?casa_token=-UfEpKBtxmMAAAAA:bWAXEWpA1Ju2niKyiwT0oiVI0q0yALYpdujj1TUzTJjyY2pApn1ih6Xh4hJBV_yLxUb0_qtzOA" rel="noopener noreferrer"&gt;great study&lt;/a&gt; showing how exposure to interaction with others improves reasoning.&lt;/p&gt;

&lt;p&gt;We are social creatures, so let’s use this to our benefit!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;References&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://files.eric.ed.gov/fulltext/EJ1140923.pdf" rel="noopener noreferrer"&gt;Evaluating Effectiveness of Pair Programming as a Teaching Tool in Programming Courses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://collaboration.csc.ncsu.edu/laurie/Papers/XPSardinia.PDF" rel="noopener noreferrer"&gt;The Costs and Benefits of Pair Programming&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://collaboration.csc.ncsu.edu/laurie/Papers/ieeeSoftware.PDF" rel="noopener noreferrer"&gt;Strengthening the Case for Pair Programming&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://collaboration.csc.ncsu.edu/laurie/Papers/CSP.pdf" rel="noopener noreferrer"&gt;An Alternative: The Collaborative Software Process (CSP)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.amazon.com/Pair-Programming-Illuminated-Laurie-Williams/dp/0201745763" rel="noopener noreferrer"&gt;Pair programming illuminated&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/322682384_The_Wason_Selection_Task_A_Meta-Analysis" rel="noopener noreferrer"&gt;Wason selection task&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pubsonline.informs.org/doi/abs/10.1287/mnsc.1120.1668" rel="noopener noreferrer"&gt;Teams Make You Smarter: How Exposure to Teams Improves Individual Decisions in Probability and Reasoning Tasks
&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hal.archives-ouvertes.fr/hal-00904097/" rel="noopener noreferrer"&gt;Why do humans reason? Arguments for an argumentative theory.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Sunk_cost" rel="noopener noreferrer"&gt;Sunk cost fallacy effect&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://martinfowler.com/articles/on-pair-programming.html" rel="noopener noreferrer"&gt;Martin Fowler On Pair Programming&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.makeitinua.com/posts/the-feedback-sandwich-method-in-digital-2021-pros-and-cons" rel="noopener noreferrer"&gt;Sandwich feedback technique&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://steemit.com/steemiteducation/@dkmathstats/constructive-criticism-and-feedback-critique-the-work-not-the-person" rel="noopener noreferrer"&gt;Constructive Criticism &amp;amp; Feedback: Critique The Work, Not The Person&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: team size</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Mon, 26 Sep 2022 10:38:27 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-size-2g34</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-size-2g34</guid>
      <description>&lt;p&gt;As discussed in the &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj"&gt;parent article&lt;/a&gt;, team size should be as small as possible to provide value to the client.&lt;/p&gt;

&lt;p&gt;To note:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://www.qsm.com/blog/2012/part-ii-small-teams-deliver-lower-cost-higher-quality" rel="noopener noreferrer"&gt;Studies&lt;/a&gt; prove that the smaller the team is, the higher the quality.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There’s &lt;a href="https://www.qsm.com/blog/2012/part-iii-finding-optimal-team-size-your-project" rel="noopener noreferrer"&gt;another study by QSM&lt;/a&gt; which says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Teams of 3 or fewer people were the most likely to achieve balanced schedule and cost/effort performance.&lt;/p&gt;

&lt;p&gt;Teams of 2 or fewer achieved the best cost/effort performance.&lt;/p&gt;

&lt;p&gt;Teams of 2 to 4 delivered the best schedule performance.&lt;/p&gt;

&lt;p&gt;Teams of more than 4 people resulted in dramatically worse cost/effort and schedule performance.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The stated reasons are as follows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;information is lost in every act of communication (hence communication path should be as short as possible)&lt;/li&gt;
&lt;li&gt;there’s a limit to productivity increase when work is parallelised (due to sync costs)&lt;/li&gt;
&lt;li&gt;management complexity grows with every new team member&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The first reason is well defined in the parent article.&lt;/p&gt;

&lt;p&gt;I want to go through the second in more detail here and the third in the following article.&lt;/p&gt;

&lt;h2&gt;
  
  
  Limit to productivity increase with work parallelisation
&lt;/h2&gt;

&lt;p&gt;The longer the team performs a task, the higher the chance that the task is waste — the world changes quickly, and clients’ needs change even quicker. The Agile movement started to motivate the companies to perform in smaller iterations much faster, checking in with the client to see if the delivered product satisfies their needs (and this is exactly what quality is!).&lt;/p&gt;

&lt;p&gt;Naturally, the team is motivated to deliver each iteration as soon as possible — to check if the quality is at the desired level.&lt;/p&gt;

&lt;p&gt;So &lt;strong&gt;speed is crucial to quality&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;And we started this article by saying that &lt;strong&gt;the fewer people, the better the quality&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;These two principles seem to contradict, don’t they?&lt;/p&gt;

&lt;p&gt;Not really.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Amdahl%27s_law" rel="noopener noreferrer"&gt;Amdahl’s law&lt;/a&gt; states that there’s a limit to a speed increase when the work is parallelised.&lt;/p&gt;

&lt;p&gt;Any parallel execution requires coordination (synchronisation). Synchronisation by default is synchronous. People and tasks aren’t equal, so some people and tasks will have to wait for the sync to happen. When there’s a wait time, delivery time decreases.&lt;/p&gt;

&lt;p&gt;Please read &lt;a href="https://getsturdy.com/blog/2021-11-29-scaling-teams" rel="noopener noreferrer"&gt;this article&lt;/a&gt; for more details, but here’s the essential quote:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Assuming 12% of the workload needs to be synchronized to facilitate healthy collaboration within the team, and if we want a reasonable minimum efficiency of 0.3, then the answer is a size of 6-7&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The concept we get from Amdahl’s law is simple: reduce the amount of parallel work to the bare minimum (&lt;strong&gt;not more than&lt;/strong&gt; 6-7 items in parallel) and make sure this work is performed as fast as possible.&lt;/p&gt;

&lt;p&gt;Interestingly, &lt;a href="https://en.wikipedia.org/wiki/Kanban_(development)" rel="noopener noreferrer"&gt;Kanban method&lt;/a&gt; has a concept called &lt;a href="https://kanbanize.com/kanban-resources/getting-started/what-is-wip" rel="noopener noreferrer"&gt;WIP limit&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;WIP is the number of task items that a team is currently working on. (in parallel — added by me)&lt;/p&gt;

&lt;p&gt;WIP limits are considered an important prerequisite for delivering value to customers as fast as possible An empirical study of WIP in kanban teams&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Kanban talks a lot about figuring out how much work to parallelise and what effects to expect.&lt;/p&gt;

&lt;p&gt;There’s &lt;a href="https://dl.acm.org/doi/10.1145/3239235.3239238" rel="noopener noreferrer"&gt;a study&lt;/a&gt; proving that the use of Kanban’s concept of limiting WIP does result in improving the team delivery speed.&lt;/p&gt;

&lt;p&gt;So if we unite Kanban’s principles and Amdahl’s law, we see that the &lt;strong&gt;optimal number of people working in parallel on tasks shouldn’t exceed 6-7&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;References:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/002210317490033X" rel="noopener noreferrer"&gt;The Ringelmann effect: Studies of group size and group performance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.qsm.com/articles/team-size-can-be-key-successful-project" rel="noopener noreferrer"&gt;Team Size Can Be the Key to a Successful Project&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.qsm.com/articles/familiar-metric-management-small-beautiful-once-again" rel="noopener noreferrer"&gt;Familiar Metric Management: Let Me Count the Ways!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://observablehq.com/@troymagennis/how-much-improvement-do-i-get-by-adding-more-teams-or-people" rel="noopener noreferrer"&gt;How much improvement do I get by adding more teams or people?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dl.acm.org/doi/10.1145/3239235.3239238" rel="noopener noreferrer"&gt;An empirical study of WIP in kanban teams&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: knowledge overlap</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Mon, 19 Sep 2022 08:15:03 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-knowledge-overlap-2nh9</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-knowledge-overlap-2nh9</guid>
      <description>&lt;p&gt;In &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj"&gt;one of the previous articles&lt;/a&gt;, I stated that team knowledge should overlap.&lt;/p&gt;

&lt;p&gt;How can one achieve that?&lt;/p&gt;

&lt;p&gt;Knowledge comes from learning and practice.&lt;/p&gt;

&lt;p&gt;Learning &lt;a href="https://www.psychologytoday.com/us/blog/freedom-learn/200909/seven-sins-our-system-forced-education" rel="noopener noreferrer"&gt;can’t be enforced&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;People learn best when team design, culture, and work conditions encourage them.&lt;/p&gt;

&lt;p&gt;As our goal is to make people’s knowledge overlap, the most obvious way is to allow them to work together and explain to each other what and why is going on.&lt;/p&gt;

&lt;p&gt;There are a few things that will certainly block these social dynamics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;EM (Engineering Manager) focus on employee’s individual performance&lt;/li&gt;
&lt;li&gt;EM focus on employee’s time utilisation&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  EM focus on employee’s individual performance
&lt;/h2&gt;

&lt;p&gt;Suppose an employee sees that the only (or the principal) thing which matters to their manager is individual performance in delivering tasks assigned to this employee. In that case, it’s unlikely that this employee would be motivated to help others or explain anything.&lt;/p&gt;

&lt;p&gt;If you as an EM have individual performance metrics, check &lt;a href="https://en.wikipedia.org/wiki/Goodhart%27s_law" rel="noopener noreferrer"&gt;Goodhart’s law&lt;/a&gt; (possibly read &lt;a href="https://www.amazon.com/Essential-Deming-Leadership-Principles-Quality/dp/0071790225" rel="noopener noreferrer"&gt;Deming’s&lt;/a&gt; or &lt;a href="https://www.amazon.com/Ackoffs-Best-Classic-Writings-Management/dp/0471316342" rel="noopener noreferrer"&gt;Akoff’s&lt;/a&gt; books on systems) and get rid of these metrics.&lt;/p&gt;

&lt;h2&gt;
  
  
  EM focus on employee’s time utilisation
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Physiology of learning
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;The neuroscientific research about learning has revealed the negative impact of stress and anxiety and the qualitative improvement of the brain circuitry involved in memory and executive function that accompanies positive motivation and engagement.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As learning can’t be done under stress, and even more — learning is an ‘exploration’ kind of activity, one needs free, or, possibly, specially dedicated time for learning.&lt;/p&gt;

&lt;p&gt;However, learning and exploration take significant mental effort. If out of 8 hours you propose 2 hours for learning, expect much less performance in the remaining 6 hours.&lt;/p&gt;

&lt;p&gt;A good piece of advice to initiate proper learning is to have a dedicated day once in a while (a week is good) where both the student and the mentor have no workload or pressing matters (releases, unfinished tasks, deadlines).&lt;/p&gt;

&lt;h3&gt;
  
  
  Psychology of learning
&lt;/h3&gt;

&lt;p&gt;Learning requires people to show their vulnerability; hence trustworthy and safe environment with mutual respect is a prerequisite.&lt;/p&gt;

&lt;h4&gt;
  
  
  Vulnerability:
&lt;/h4&gt;

&lt;p&gt;While learning, one moves from ‘not knowing’ to ‘knowing’, and the first step is to reveal that there’s a lack of knowledge, and this is psychologically challenging, and even more so if the person is very senior in one area and they are just starting in another.&lt;/p&gt;

&lt;p&gt;The learning person needs to ‘abandon’ their seniority status and still be accepted and respected in the team.&lt;/p&gt;

&lt;p&gt;The first step in achieving this is to make sure everyone does this — everyone learns something and shows vulnerability, which must start with the EM.&lt;/p&gt;

&lt;p&gt;You, the EM, must lead people by your example: show your vulnerability, strip off your ‘status’, admit you don’t know some tech, ask the specialist to teach you, make the process transparent, and show how cool it is to your team. Make mistakes in public.&lt;/p&gt;

&lt;h4&gt;
  
  
  Safe environment:
&lt;/h4&gt;

&lt;p&gt;Make sure no one judges the learning progress; as I’ve said, learning is exploration, and every explorer has their speed.&lt;/p&gt;

&lt;p&gt;The strategic goal of getting knowledge overlap in the team can be easily undermined by an appealing urge to make people learn faster and compete.&lt;/p&gt;

&lt;p&gt;Please do not copy the school grading system: it encourages competition and is currently severely criticized and revised by modern pedagogy scientists.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When we consider the practically universal use in all educational institutions of a system of marks, we can but be astonished at the blind faith that has been felt in the reliability of the marking systems. (&lt;strong&gt;Finkelstein, 1913&lt;/strong&gt;)&lt;/p&gt;

&lt;p&gt;Isn’t it hypocritical to preach about the importance of innovation in education while simultaneously clinging to a system of grading which is almost as archaic as it is useless. (&lt;strong&gt;Ferriter, 2015&lt;/strong&gt;)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Do not introduce any tests or examinations to assess the level of ‘learning progress’ — learning never stops, and you don’t need to add stress bound to arbitrary dates.&lt;/p&gt;

&lt;h4&gt;
  
  
  Flexibility:
&lt;/h4&gt;

&lt;p&gt;It’s tempting to set a ‘growth plan’ for each person in stone. However, your goal is not to make people equal; your goal is to have everyone learn from each other.&lt;/p&gt;

&lt;p&gt;You don’t need abstract knowledge with grades in each area; you need knowledge overlap to reduce information loss in communication between people.&lt;/p&gt;

&lt;p&gt;Essentially, you create a community of people who naturally want to learn and share (teach). Everyone is different; you as an EM can’t and shouldn’t make them all the same, but instead encourage them to support and teach each other.&lt;/p&gt;

&lt;h4&gt;
  
  
  Glory:
&lt;/h4&gt;

&lt;p&gt;Everyone wants ‘a moment to shine’ i.e., some positive feedback on their newly acquired skills. Why don’t you provide an opportunity for people to show off what they learned via something like public talks?&lt;/p&gt;

&lt;p&gt;Occasional volunteer Friday talks seem to be quite a good idea. Don’t push people, but encourage and help them prepare.&lt;/p&gt;

&lt;p&gt;To sum everything up:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;allow proper free time for learning, maybe a half a day per week, like Friday afternoon?&lt;/li&gt;
&lt;li&gt;lead the process by example, learn from your team, and do it publicly&lt;/li&gt;
&lt;li&gt;give people space and a good atmosphere: don’t grade, don’t ‘track progress’&lt;/li&gt;
&lt;li&gt;allow people to show off what they’ve learned&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;References:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.psychologytoday.com/us/blog/freedom-learn/200909/seven-sins-our-system-forced-education" rel="noopener noreferrer"&gt;Seven Sins of Our System of Forced Education&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.verywellmind.com/learning-study-guide-2795698" rel="noopener noreferrer"&gt;Educational Psychology&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.edutopia.org/blog/neuroscience-behind-stress-and-learning-judy-willis" rel="noopener noreferrer"&gt;The Neuroscience Behind Stress and Learning&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.nature.com/articles/npjscilearn201611" rel="noopener noreferrer"&gt;Learning and memory under stress: implications for the classroom&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/324544815_A_critique_of_grading_Policies_practices_and_technical_matters" rel="noopener noreferrer"&gt;A critique of grading: Policies, practices, and technical matters&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.williamferriter.com/2015/09/18/if-grades-dont-advance-learning-why-do-we-give-them/" rel="noopener noreferrer"&gt;If Grades don’t Advance Learning, Why Do We Give Them?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4041495/" rel="noopener noreferrer"&gt;Teaching More by Grading Less (or Differently)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: no time pressure</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Thu, 08 Sep 2022 10:53:47 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-no-time-pressure-3mb0</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-no-time-pressure-3mb0</guid>
      <description>&lt;p&gt;In the previous &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-processess-issues-421g"&gt;post&lt;/a&gt;, I suggested considering getting rid of the whole concept of time pressure imposed on developers.&lt;/p&gt;

&lt;p&gt;Here I will review the most common scenarios when this concept emerges and think with you if the concept can be avoided.&lt;/p&gt;

&lt;p&gt;It’s well-established knowledge that the stress induced by time constraints causes loss of quality, unhappiness, loss of creativity, and even toggles serious health issues:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://hbswk.hbs.edu/item/does-time-pressure-help-or-hinder-creativity-at-work" rel="noopener noreferrer"&gt;Does Time Pressure Help or Hinder Creativity at Work?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.researchgate.net/publication/332494069_Happiness_and_the_productivity_of_software_engineers" rel="noopener noreferrer"&gt;Happiness and the productivity of software engineers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.psychologytoday.com/us/blog/counseling-keys/201506/the-dark-side-deadlines" rel="noopener noreferrer"&gt;The Dark Side of Deadlines — havoc on your health&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedaily.com/releases/2016/01/160121121818.htm" rel="noopener noreferrer"&gt;Chronic stress, anxiety can damage the brain, increase risk of major psychiatric disorders&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedaily.com/releases/2016/09/160919133449.htm" rel="noopener noreferrer"&gt;Rushing to complete work on deadline could mean more mistakes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Time pressure comes in two forms: "&lt;strong&gt;let’s just do it faster&lt;/strong&gt;" and "&lt;strong&gt;we need to meet our estimates&lt;/strong&gt;".&lt;/p&gt;

&lt;p&gt;So it’s obvious we need to get rid of the time pressure and somehow work without it, but how do we do that?&lt;/p&gt;

&lt;p&gt;Getting rid of the first form (‘let’s do it faster’) is simple — just don’t rush the team.&lt;/p&gt;

&lt;p&gt;But getting rid of the second form (‘estimates and deadlines’) is harder.&lt;/p&gt;

&lt;p&gt;Let’s go through the most common use cases for estimations and deadlines and see how we can avoid them.&lt;/p&gt;

&lt;p&gt;First, let’s define what the estimate is.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dictionary.cambridge.org/dictionary/english/estimate" rel="noopener noreferrer"&gt;Cambridge dictionary&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;a guess of what the size, value, amount, cost, etc. of something might be&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;A guess&lt;/strong&gt;, a prognosis.&lt;/p&gt;

&lt;p&gt;We live and work in non-deterministic systems and operate in highly volatile market. It is impossible to guarantee that our guess will come true.&lt;/p&gt;

&lt;p&gt;However, most managers still use estimations; the top reasons I have witnessed as to why are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The public tender contract requires estimation&lt;/li&gt;
&lt;li&gt;The Manager “needs to know” when a feature is to be done&lt;/li&gt;
&lt;li&gt;The Manager “needs to understand” how much a feature will ‘cost’&lt;/li&gt;
&lt;li&gt;The Manager “needs to be able to choose between features based on cost”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There's proper math behind it, but the simple rule of thumb is: the more resources (time in most cases) we spend on estimation, the more accurate the estimate is.&lt;/p&gt;

&lt;p&gt;Weather forecasting uses &lt;a href="https://www.zdnet.com/article/this-billion-dollar-supercomputer-will-be-used-to-create-super-accurate-weather-forecasts/" rel="noopener noreferrer"&gt;priceless supercomputers&lt;/a&gt; to increase prognosis accuracy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why spending so much?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Well, better (more accurate) weather forecasting yields multifold investment returns: logistics can be optimised, and human lives can be saved.&lt;/p&gt;

&lt;p&gt;It seems a good idea to align each reason with the main goal of any investment — &lt;strong&gt;a goal of providing value&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;So, what value does estimations provide for each reason listed?&lt;/p&gt;

&lt;h3&gt;
  
  
  Public tender has ‘time’ and ‘budget’ as a condition
&lt;/h3&gt;

&lt;p&gt;The time and budget constraints are external to the company so if the company needs this contract it has to comply.&lt;/p&gt;

&lt;p&gt;The company has to decide if producing the required system within required budget and time is economically beneficial.&lt;/p&gt;

&lt;p&gt;➕ &lt;strong&gt;investing in estimations is rationalised&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Manager needs to know ‘when it will be done’
&lt;/h3&gt;

&lt;p&gt;This request is very abstract.&lt;/p&gt;

&lt;p&gt;Most common reasons for this request that I’ve heard are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;marketing campaign starts on the X date and we need to understand if the team manages to build and launch a feature&lt;/li&gt;
&lt;li&gt;an external event with set date emerged (for example, FIFA world cup) and managers need to understand if certain features can be launched on time&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Marketing campaign
&lt;/h4&gt;

&lt;p&gt;Marketing team works alongside IT team for the same company.&lt;/p&gt;

&lt;p&gt;The whole company goal is to make client happier.&lt;/p&gt;

&lt;p&gt;So why can’t these teams collaborate in a high-trust environment?&lt;/p&gt;

&lt;p&gt;Can marketing predict exact number of sales they will generate for a certain budget (essentially, the outcome)?&lt;/p&gt;

&lt;p&gt;If not, why does the IT team need to predict the outcome of their work?&lt;/p&gt;

&lt;p&gt;Compare these two scenarios:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;IT team produces some value for the clients and marketing team starts advertising this new value to potential and existing clients&lt;/li&gt;
&lt;li&gt;Marketing team dictates the IT team ‘the advertising campaign will be launched on X date, you must be on time’.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To me it looks that the first scenario doesn’t provoke quality decrease (due to rushing) and also doesn’t require spending resources on estimation.&lt;/p&gt;

&lt;p&gt;➖ &lt;strong&gt;investing in estimations is not rationalised&lt;/strong&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  External event occurred
&lt;/h4&gt;

&lt;p&gt;There might occur an external event which makes the company require estimation from the IT team.&lt;/p&gt;

&lt;p&gt;For example, the country wins an opportunity to hold UEFA championship. Then the company needs to invest time in estimating a certain set of features to make sure it’s worthy to invest money into building those features so that they are delivered before the UEFA championshop.&lt;/p&gt;

&lt;p&gt;If the result of estimation shows that even the minimum minimorum of features can’t be built on time, the company will decide now to even start building these features.&lt;/p&gt;

&lt;p&gt;There’s a good question though — how often do events like this occur?&lt;/p&gt;

&lt;p&gt;In the example of UEFA championship there are two things to weigh and compare:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;amount of resources required to estimate + amount of resources required for ensuring the project is done on time&lt;/li&gt;
&lt;li&gt;the probability of country winning the UEFA championship&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If the probability (2) is high, it might be beneficial to bid on it and prepare the software in advance and just turn it on when needed.&lt;/p&gt;

&lt;p&gt;➕/➖ &lt;strong&gt;not sure if estimation is rationalised&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  manager needs to understand how much a certain feature costs to develop
&lt;/h3&gt;

&lt;p&gt;There usually are two reasons for this particular request:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;manager wants to compare features based on their cost&lt;/li&gt;
&lt;li&gt;manager wants to understand if a certain feature ‘is worth it’&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These reasons are deeply intervened.&lt;/p&gt;

&lt;p&gt;First, before any development estimation is done, product ‘estimation’ needs to be reviewed.&lt;/p&gt;

&lt;p&gt;If a manager ‘just tells to build the feature’ with no prediction on how the feature will benefit the clients and the company, there’s absolutely no need to do any ‘estimation’ of development.&lt;/p&gt;

&lt;p&gt;In this scenario manager just throws unsupported guesses to the development team – pure leap of faith.&lt;/p&gt;

&lt;p&gt;So in this scenario manager doesn’t get any estimations — manager first need to explain why the company needs the feature, i.e. why the manager is going to spend development team time and effort.&lt;/p&gt;

&lt;p&gt;If our manager does provide economical rationalisation (i.e. product value estimation) for the feature, next step is to check how accurate their estimations were.&lt;/p&gt;

&lt;p&gt;If manager’s previous estimation accuracy is low, there’s no need to do development estimation, it is a ‘leap of faith’ anyway.&lt;/p&gt;

&lt;p&gt;Here’s an illustration:&lt;/p&gt;

&lt;p&gt;Let’s say that a Product Manager comes up with three features: Square, Circle and Triangle.&lt;/p&gt;

&lt;p&gt;Product Manager provides the following profit estimation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;+-----------+-------------+
|  feature  |  estimate   |
+-----------+-------------+
|  Square   | $50k-$90k   |
|  Circle   | $150k-$200k |
|  Triangle | $300k-$400k |
+-------------------------+
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Dev team gives the following estimations for time the team will spend on the delivering features:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;+-----------+-----------+
|  feature  |  estimate |
+-----------+-----------+
|  Square   |  10-40d   |
|  Circle   |  15-30d   |
|  Triangle |  20-24d   |
+-----------+-----------+
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Built together with team time converted to money (1d to $1k for simplicity):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;+-----------+---------------+------------+
|  feature  |  revenue est. |  cost est. |
+-----------+---------------+------------+
|  Square   |  $50k-$90k    |  $10k-$40k |
|  Circle   |  $150k-$200k  |  $15k-$30k |
|  Triangle |  $300k-$400k  |  $20k-$24k |
+-----------+---------------+------------+
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It seems that all these three features were well-worth to do, according to our estimations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Square will yield at least $10k in the worst case scenario&lt;/li&gt;
&lt;li&gt;Circle will yield at least $120k in the worst case scenario&lt;/li&gt;
&lt;li&gt;Triangle will yield at least $276k in the worst case scenario&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now let's see what happened when the features Square, Circle and Triangle got developed and delivered to the clients:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;+-----------+----------------------------+-------------------------+
|  feature  |  revenue result            |  cost result            |
+-----------+----------------------------+-------------------------+
|  Square   |  $90k   (from $50k-$90k)   |  $13k  (from $10k-$40k) |
|  Circle   |  $200k  (from $150k-$200k) |  $30k  (from $15k-$30k) |
|  Triangle |  $30k   (from $300k-$400k) |  $40k  (from $20k-$24k) |
+-----------+----------------------------+-------------------------+
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As we can see, a few estimations were wrong.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Square yielded $57k.&lt;/li&gt;
&lt;li&gt;Circle yielded $170k.&lt;/li&gt;
&lt;li&gt;Triangle yielded &lt;strong&gt;loss&lt;/strong&gt; of $10k.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Well, real life is tough, estimations fail lots of the times.&lt;/p&gt;

&lt;p&gt;But here's what's important: &lt;strong&gt;it makes more sense optimising the quality of estimation on the left, on the product side&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;There's another conclusion: &lt;strong&gt;there's no point in doing estimations in IT if PM doesn't have a decent estimation quality (and a proven record of providing estimates of decent quality)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;It’s also quite obvious that comparing any features on their &lt;em&gt;cost&lt;/em&gt; only makes pretty much no sense as well — it makes sense only in the case when PM’s revenue estimation quality of prognosis is ridiculously high :)&lt;/p&gt;

&lt;p&gt;➖ &lt;strong&gt;investing in estimations is not rationalised&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;Considering all the reasons and knowing the negative impact of time pressure, decide rationally if you still need some prognosis mechanism.&lt;/p&gt;

&lt;p&gt;If you do decide that the estimation is required, check &lt;a href="https://aktiasolutions.com/estimating-in-kanban-forecasting-in-kanban/" rel="noopener noreferrer"&gt;statistical forecasting&lt;/a&gt; in Kanban. The approach is simple yet provides enough accuracy for most cases and doesn’t impose any time pressure on the team.&lt;/p&gt;

&lt;p&gt;There’s also a good book &lt;a href="http://noestimatesbook.com/" rel="noopener noreferrer"&gt;#NoEstimates&lt;/a&gt; which explains how to meet goals without imposing time pressure on the developers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So the advice from the &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-processess-issues-421g"&gt;previous post&lt;/a&gt; stands&lt;/strong&gt;: consider running the development process without the following concepts: estimations, story points, deadlines, sprints (or any other practice imposing time pressure on engineers).&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: team processess issues</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Thu, 01 Sep 2022 15:24:15 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-processess-issues-421g</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-team-processess-issues-421g</guid>
      <description>&lt;p&gt;In the &lt;a href="https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj"&gt;first chapter&lt;/a&gt;, I focused on team topology aspects that affect the information flow in principle.&lt;/p&gt;

&lt;p&gt;Here I will focus on the aspects of team design that influence people's behaviour (or motivation).&lt;/p&gt;

&lt;p&gt;I’m sure you must have seen ‘tired and unhappy’ receptionists at some hotel, try to recall: were they keen on satisfying your needs?&lt;/p&gt;

&lt;p&gt;Why were they behaving this way? The information could flow; nothing was technically stopping it; they could get all the required details from you, the client.&lt;/p&gt;

&lt;p&gt;They might have had all the skills required to do the job.&lt;/p&gt;

&lt;p&gt;Merriam-Webster &lt;a href="https://www.merriam-webster.com/dictionary/skill" rel="noopener noreferrer"&gt;defines skill&lt;/a&gt; as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the ability to use one's knowledge effectively and readily in execution or performance&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So, granted, we created a good team topology and hired skillful employees; what is the next prerequisite for the successful information flow?&lt;/p&gt;

&lt;p&gt;It's tempting to say that the receptionist in our example simply lacked motivation (or desire) to set the information flowing and get all the details from us.&lt;/p&gt;

&lt;p&gt;But things are much more complicated. Along with the information flow, motivation depends severely on the system design too.&lt;/p&gt;

&lt;p&gt;The main concept here is 'unhappiness'. When your employee is not 'happy', they won't even want to make the client happy; they won't even want to try to understand the client.&lt;/p&gt;

&lt;p&gt;Happiness is a very broad concept, but surely work influences employee’s happiness.&lt;/p&gt;

&lt;p&gt;Many studies ( &lt;a href="https://quod.lib.umich.edu/b/busadwp/images/b/2/0/b2014142.0001.001.pdf" rel="noopener noreferrer"&gt;1&lt;/a&gt;, &lt;a href="https://www.tandfonline.com/doi/abs/10.1080/10686967.1996.11918726" rel="noopener noreferrer"&gt;2&lt;/a&gt; ) show how strongly productivity and quality are related.&lt;/p&gt;

&lt;p&gt;There’s also a great &lt;a href="https://www.researchgate.net/publication/332494069_Happiness_and_the_productivity_of_software_engineers" rel="noopener noreferrer"&gt;overview study&lt;/a&gt; from Daniel Graziotin (Universität Stuttgart) and Fabian Fagerholm at Aalto University. The study tries to answer the big question — are happy employees more productive? And the answer is: &lt;strong&gt;yes, they are more productive when happy.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So it seems pretty reasonable to postulate that unhappy engineers yield worse results in quantity and quality.&lt;/p&gt;

&lt;p&gt;Let’s see what the study shows as reasons for engineers’ unhappiness.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. There should be no time pressure
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Being stuck in problem-solving and time pressure are the two most frequent causes of unhappiness ... developers feel bad when they are stuck and under pressure, and several detrimental consequences do happen&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Engineers are pressed for time when the software development process employs concepts like estimates, deadlines, and sprints.&lt;/p&gt;

&lt;p&gt;Very rarely, there’s a rational reason to have deadlines in software development, and even more, estimations at all. I suggest you watch &lt;a href="https://www.youtube.com/watch?v=tqoJOEjeAEw" rel="noopener noreferrer"&gt;my talk&lt;/a&gt; on the topic.&lt;/p&gt;

&lt;p&gt;There’s also a good book &lt;a href="http://noestimatesbook.com/" rel="noopener noreferrer"&gt;#NoEstimates&lt;/a&gt; which explains how to meet goals without imposing time pressure on the developers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Advice&lt;/strong&gt;: consider running the development process without the following concepts: estimations, story points, deadlines, sprints (or any other practice imposing time pressure on engineers).&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Professional ethics should not be broken
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;The third most frequent cause of unhappiness is to work with bad code and, more specifically, with bad code practices. Developers are unhappy when they produce bad code, but they suffer tremendously when they meet bad code that could have been avoided in the first place. As our participants stated, bad code can be a result of management decisions aiming to save time and effort in the short term.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Martin Fowler has an excellent &lt;a href="https://martinfowler.com/articles/is-quality-worth-cost.html" rel="noopener noreferrer"&gt;article&lt;/a&gt; explaining how ‘cutting costs’ on tests makes development more expensive.&lt;/p&gt;

&lt;p&gt;This obligation to do the work &lt;em&gt;properly&lt;/em&gt; is called &lt;strong&gt;professional ethics&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When a patient has surgery, no one can demand a surgeon to finish the operation sooner. Everyone respects the surgeon’s work. Surgeons’ professional ethics rely solely on the surgeon’s professional judgment of how the procedure is to be done for the best of the patient.&lt;/p&gt;

&lt;p&gt;In software development, it’s the team's professional judgment that is to be used to determine how the code should be written.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The advice here is simple&lt;/strong&gt;: don't break the team's professional ethics by telling them to skip something to achieve short-term savings. As Fowler says, you'll lose more in the long term. &lt;strong&gt;And&lt;/strong&gt; the team happiness will decrease too.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Process activities should not toggle inadequacy of self
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Similar negative effects were mentioned regarding third persons (such as colleagues, team leaders, or customers) who make developers feel inadequate with their work, forced repetitive mundane tasks, and imposed limitations on development&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Some examples of activities that might toggle the feeling of inadequacy of self:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;testing after development&lt;/li&gt;
&lt;li&gt;code review&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3.1 Testing shouldn’t be done only after the development
&lt;/h3&gt;

&lt;p&gt;Testing after development (i.e. &lt;a href="https://www.techtarget.com/whatis/definition/quality-control-QC" rel="noopener noreferrer"&gt;quality control&lt;/a&gt;) is the verification process if the delivered software matches the requirement. The process is not that bad, but it shouldn’t be used exclusively.&lt;/p&gt;

&lt;p&gt;If it’s used exclusively, there are two bad outcomes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;if the quality is not good, a significant rework is required, and this has a detrimental effect on the team's happiness (and is a huge waste of resources, too) — no one will be happy when the result of their work is thrown away&lt;/li&gt;
&lt;li&gt;a person who performed the QC procedure might be perceived as someone diminishing the effort the engineer spends on producing the software&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://insights.sei.cmu.edu/blog/four-types-of-shift-left-testing/" rel="noopener noreferrer"&gt;Shift left testing&lt;/a&gt; approach appears to solve these issues. Read it, employ it.&lt;/p&gt;

&lt;h3&gt;
  
  
  3.2 Code reviews should potentially go away
&lt;/h3&gt;

&lt;p&gt;Like the previous factor, checking at the ‘done’ stage is too late and ineffective.&lt;/p&gt;

&lt;p&gt;Here’s an &lt;a href="https://hackernoon.com/code-review-its-bad-expensive-and-ineffective-in-most-cases" rel="noopener noreferrer"&gt;article to read&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Every human being associates her work results with themselves. Valuing things we spend effort on doing is innate to our nature.&lt;/p&gt;

&lt;p&gt;Whenever a developer receives feedback like “this has to be redone”, they will inevitably associate this feedback with themselves.&lt;/p&gt;

&lt;p&gt;The more effort a person spent on doing something, the more vulnerable she is to the critics. And while she hadn’t been taught properly how the problem should have been solved, she considers negative feedback even worse.&lt;/p&gt;

&lt;p&gt;Internet’s full of posts and articles on how to “solve” this “negativity problem”. Most of these posts talk about how to provide more “positive” feedback.&lt;/p&gt;

&lt;p&gt;Microsoft even hired a fully dedicated specialist working on this issue.&lt;/p&gt;

&lt;p&gt;However, this all seems palliative treatment, none of these approaches offer to solve the problem properly.&lt;/p&gt;

&lt;p&gt;Solving the problem properly would be introducing the teaching or planning phase before the effort on doing the task is spent and a feeling of achievement emerges.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Advice&lt;/strong&gt;: think about what behaviors your process activities encourage in developers. Are they encouraged to collaborate (as in pair/ensemble programming or shift-left testing), or are they inspired to frown upon the results of each other work (as in code review or testing after production)?&lt;/p&gt;

&lt;p&gt;Employ pair programming, or at least move away from code reviews when you see that there are no more significant issues found during the code reviews.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Boredom should be avoided
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Similar negative effects were mentioned regarding third persons (such as colleagues, team leaders, or customers) who make developers feel inadequate with their work, forced repetitive mundane tasks, and imposed limitations on development&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The key points here are: &lt;em&gt;repetitive&lt;/em&gt; and &lt;em&gt;mundane&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Software development (as pretty much any other type of intellectual labour) is all about solving problems. World changes often, new problems arise all the time, and there’s pretty much always something new to solve.&lt;/p&gt;

&lt;p&gt;Yet, sometimes engineers do need to do something ‘not new’, something they know for sure how to do.&lt;/p&gt;

&lt;p&gt;The problem which toggles unhappiness is when the amount of repetitive tasks is getting high.&lt;/p&gt;

&lt;p&gt;Some examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;manual verification of code quality (testing)&lt;/li&gt;
&lt;li&gt;writing boilerplate code&lt;/li&gt;
&lt;li&gt;solving the same task over and over again (after code review rejection, for example)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Advice&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;check the amount of rework (waste), think about minimising it (possibly get rid of code review in favour of pair/ensemble programming or at least pair/ensemble technical design)&lt;/li&gt;
&lt;li&gt;consider having repetitive work automated (shifting from manual regression testing to automated testing or even TDD)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Another fundamental concept here is ‘mundane’ work. Mundane generally implies a lack of interest. But what is this lack of interest? How does interest emerge in developers?&lt;/p&gt;

&lt;p&gt;If there’s no understanding of why the work is needed and what value it brings to the team or the client, ‘interest’ will unlikely emerge.&lt;/p&gt;

&lt;p&gt;So it seems to be very important to have full transparency on why the work that’s requested is important and what value it brings.&lt;/p&gt;

&lt;p&gt;To summarise the advice here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Don’t impose non-rational time pressure on your employees; use either a statistical approach to estimations or no estimations; prioritise projected value, not cost.&lt;/li&gt;
&lt;li&gt;Don’t break the professional ethics: you hired professionals to do their job; intruding the process to cut the costs negatively impacts the &lt;a href="https://en.wikipedia.org/wiki/Total_cost_of_ownership" rel="noopener noreferrer"&gt;total cost of ownership&lt;/a&gt; of the system and the team motivation.&lt;/li&gt;
&lt;li&gt;Design the process to minimise waste: employ pair programming, TDD, shift-left testing.&lt;/li&gt;
&lt;li&gt;Make sure employees fully understand a clear vision of the purpose of work.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;References&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://langsci-press.org/catalog/book/231" rel="noopener noreferrer"&gt;Analyzing meaning: An introduction to semantics and pragmatics.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=v2cmjbgfbJc" rel="noopener noreferrer"&gt;Tricky linguistics from A Bit of Fry &amp;amp; Laurie&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.amazon.co.uk/gp/product/B09GG6XKS4/" rel="noopener noreferrer"&gt;Modern Software Development&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.amazon.co.uk/gp/product/0321503627/" rel="noopener noreferrer"&gt;Test Driven Development&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0221616" rel="noopener noreferrer"&gt;In-group favouritism and out-group discrimination in naturally occurring groups&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.jstor.org/stable/1131676" rel="noopener noreferrer"&gt;Social Categorization and the Formation of Intergroup Attitudes in Children&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://opentextbc.ca/socialpsychology/chapter/ingroup-favoritism-and-prejudice/" rel="noopener noreferrer"&gt;Ingroup Favoritism and Prejudice&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.jstor.org/stable/24927662" rel="noopener noreferrer"&gt;Experiments in Intergroup Discrimination&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://castletonconsulting.co.uk/wp-content/uploads/2013/07/The_Honda_effect_revisited.pdf" rel="noopener noreferrer"&gt;The Honda effect revisited&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-2008-11.pdf" rel="noopener noreferrer"&gt;The influence of organisational structure on software quality: an empirical case study&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=ln4WnxX-wrw" rel="noopener noreferrer"&gt;Dave Farley on TDD &amp;amp; quality&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://insights.sei.cmu.edu/blog/four-types-of-shift-left-testing/" rel="noopener noreferrer"&gt;Four types of Shift Left testing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S0950584908001080" rel="noopener noreferrer"&gt;How do personality, team processes and task characteristics relate to job satisfaction and software quality?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tandfonline.com/doi/abs/10.1080/10686967.1996.11918726" rel="noopener noreferrer"&gt;An Empirical Investigation of the Relationship between Quality and Productivity&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://quod.lib.umich.edu/b/busadwp/images/b/2/0/b2014142.0001.001.pdf" rel="noopener noreferrer"&gt;An empirical analysis of productivity and quality in software products&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Designing a team that would produce software of good quality: information loss problem</title>
      <dc:creator>Vitaly Sharovatov</dc:creator>
      <pubDate>Thu, 25 Aug 2022 11:38:00 +0000</pubDate>
      <link>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj</link>
      <guid>https://dev.to/sharovatov/designing-a-team-that-would-produce-software-of-good-quality-information-loss-problem-3paj</guid>
      <description>&lt;p&gt;As &lt;a href="https://asq.org/about-asq/honorary-members/dodge" rel="noopener noreferrer"&gt;Harold F. Dodge&lt;/a&gt; said:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You can not inspect quality into a product.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;He meant that the system should be &lt;em&gt;designed&lt;/em&gt; to produce a quality product.&lt;/p&gt;

&lt;p&gt;This article is about team design: principles of team construction that will allow the team to produce a quality product.&lt;/p&gt;

&lt;p&gt;We know what ‘product’ is: an &lt;a href="https://en.wikipedia.org/wiki/Information_system" rel="noopener noreferrer"&gt;information system&lt;/a&gt; allowing the client &lt;em&gt;to do something&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Are you aware of the team &amp;amp; process design aspects which influence the quality of the product your team builds?&lt;/p&gt;

&lt;p&gt;Let’s dig in and start with the definitions.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is quality?
&lt;/h2&gt;

&lt;p&gt;Two standards are defining the quality:&lt;/p&gt;

&lt;p&gt;General one (for products) — &lt;a href="https://efrcertification.com/Ref/ISO+9000-2005.pdf" rel="noopener noreferrer"&gt;ISO 9000&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;quality degree to which a set of inherent characteristics fulfils requirements&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And the one talking specifically about the software quality — &lt;a href="https://www.iso.org/obp/ui/#iso:std:iso-iec:25000:ed-2:v1:en" rel="noopener noreferrer"&gt;ISO 25000&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;software quality — capability of software product to satisfy stated and implied needs when used under specified conditions&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Both talk about a "match" between what the client desired and what's present (produced).&lt;/p&gt;

&lt;p&gt;We want to produce exactly what's needed or wanted, so the match is "maximised", i.e., the quality is at its highest.&lt;/p&gt;

&lt;p&gt;A few areas of problems related to quality might occur when you create a team.&lt;/p&gt;

&lt;h2&gt;
  
  
  Information loss in conversion
&lt;/h2&gt;

&lt;p&gt;The idea or desire can never be &lt;em&gt;fully&lt;/em&gt; expressed: idea-to-language transformation yields information loss. Consider it similar to digital -&amp;gt; analogue transformation.&lt;/p&gt;

&lt;p&gt;Then the idea (transformed to language) during the perceiving process will have even more information lost; consider this analogue -&amp;gt; digital transformation.&lt;/p&gt;

&lt;p&gt;The reason for the loss is simple:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the language itself is ambiguous&lt;/li&gt;
&lt;li&gt;the language can only provide us with a symbolic representation of the meaning&lt;/li&gt;
&lt;li&gt;the symbol is perceived differently, so the meaning is not constant but temporally, contextually, and individually bound&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw07ps974l4h1qsw898fq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw07ps974l4h1qsw898fq.png" alt="Cylinder projections from different angles" width="700" height="525"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The picture above illustrates the ambiguity of the symbolic system caused by the interpeters’ different perspectives (viewpoints).&lt;/p&gt;

&lt;p&gt;There are two areas of science studying this particular set of problems: &lt;a href="https://en.wikipedia.org/wiki/Semiotics" rel="noopener noreferrer"&gt;Semiotics&lt;/a&gt; and &lt;a href="https://langsci-press.org/catalog/book/231" rel="noopener noreferrer"&gt;Semantics&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Very simply put, "chess" can be describing "the board of chess" or "the game of chess", "green" can't be explained to a blind person, "salty" can be perceived differently not only by different people but by the same person at different times.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffixom9t9wtixq2tz3yug.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffixom9t9wtixq2tz3yug.jpeg" alt="Broken telephone visualisation" width="728" height="546"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Chinese_whispers" rel="noopener noreferrer"&gt;Broken telephone experiment&lt;/a&gt; illustrates how the information loss is increased: the more links in the information flow chain we have, the more times the information undergoes perceiving/verbalising transformation, the more information loss we have.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The less links in the information processing chain, higher the quality.
&lt;/h3&gt;

&lt;p&gt;This principle has four implications:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;teams should be sitting closer to the client&lt;/li&gt;
&lt;li&gt;teams should be as small as possible&lt;/li&gt;
&lt;li&gt;teams should be crossfunctional (no silos)&lt;/li&gt;
&lt;li&gt;teams members’ knowledge should overlap&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  1.1 Team should be sitting closer to the client
&lt;/h4&gt;

&lt;p&gt;The client is the source of information, the closer the team sits with the client, the better the quality is: simply less information loss. Ideally, the client representative should sit right with the team.&lt;/p&gt;

&lt;p&gt;Also, if the client representative sits with the team, the team can show the interim results more often and get more feedback.&lt;/p&gt;

&lt;p&gt;This is very important simply because the client might not even fully understand the need, or the first way their desire is implemented might not be satisfactory for the client. The shorter the feedback cycle, the less unnecessary work is performed.&lt;/p&gt;

&lt;h4&gt;
  
  
  1.2 Team should be as small as possible
&lt;/h4&gt;

&lt;p&gt;If just one engineer is helping the client to achieve what they need, the information loss is minimal — there are just two links in the chain: client -&amp;gt; engineer.&lt;/p&gt;

&lt;p&gt;If the information follows the client-&amp;gt;business analyst-&amp;gt;architect-&amp;gt;system analyst-&amp;gt;engineer-&amp;gt;QA flow, there are six links, six times the conversion is done, the information is lost significantly.&lt;/p&gt;

&lt;p&gt;There are only two ways to overcome the inherent information loss: specify everything in more detail or reduce the number of links in the chain.&lt;/p&gt;

&lt;p&gt;Specifying everything in more detail requires time, which is of essential value (the world changes too quickly). The whole Agile movement started with the goal of delivering clients what they wanted but faster and better.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.qsm.com/blog/2012/part-ii-small-teams-deliver-lower-cost-higher-quality" rel="noopener noreferrer"&gt;Studies&lt;/a&gt; prove that the smaller the team is, the higher the quality.&lt;/p&gt;

&lt;p&gt;One should also note that the more developers the team comprise, the higher the chance of ‘ownership blurring’ where individuals see less obvious results from their efforts.&lt;/p&gt;

&lt;p&gt;This might result in people losing motivation or having ‘this can be done by someone else’ attitude.&lt;/p&gt;

&lt;p&gt;Managers should ask themselves: what is the bare minimum of people required to produce what the client wants?&lt;/p&gt;

&lt;p&gt;Is it possible to produce the software product with just 1 employee talking directly to the client (or their representative)? If not, can we get away with 2? Or 3?&lt;/p&gt;

&lt;h4&gt;
  
  
  1.3 Team should be cross-functional (no silos)
&lt;/h4&gt;

&lt;p&gt;Social psychology has multiple studies on a concept called &lt;a href="https://en.wikipedia.org/wiki/In-group_favoritism" rel="noopener noreferrer"&gt;In-group favoritism&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the tendency to respond more positively to people from our ingroups than we do to people from outgroups.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Minimal_group_paradigm" rel="noopener noreferrer"&gt;Minimal group paradigm&lt;/a&gt; describes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Experiments using this approach have revealed that even arbitrary distinctions between groups, such as preferences for certain paintings, or the color of their shirts, can trigger a tendency to favor one's own group at the expense of others, even when it means sacrificing in-group gain&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Basically, people easily form groups and instantly start prejudice against the outgroup members or even discriminate against them.&lt;/p&gt;

&lt;p&gt;As shown, the reason for the separation might be as insignificant as the colour of the shirt.The reason for this, as &lt;a href="https://opentextbc.ca/socialpsychology/chapter/ingroup-favoritism-and-prejudice/" rel="noopener noreferrer"&gt;studies say&lt;/a&gt;, is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Because our ancestors lived in small social groups that were frequently in conflict with other groups, it was evolutionarily functional for them to view members of other groups as different and potentially dangerous. Differentiating between “us” and “them” probably helped keep us safe and free from disease, and as a result, the human brain became very efficient in making these distinctions&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Knowing this particular social dynamic that people have in groups, it seems evident that there’s no place for separating teams based on specialisation.&lt;/p&gt;

&lt;p&gt;That’s exactly why the concept of an interdisciplinary (or cross-functional) team was created.&lt;/p&gt;

&lt;p&gt;The cross-functional team comprises a number of people of all specialisations required to deliver value to the client.&lt;/p&gt;

&lt;p&gt;Do not separate team members working on a product into sub-teams based on specialisation, and you won’t get negative social dynamics of intergroup discrimination or prejudice.&lt;/p&gt;

&lt;h4&gt;
  
  
  1.4 Team members’ knowledge should overlap
&lt;/h4&gt;

&lt;p&gt;When your team comprises people specalising only in a very narrow field of expertise, each act of communication will require additional ‘bridging’ efforts to overcome the information loss.&lt;/p&gt;

&lt;p&gt;Generally speaking, if your iOS developer understands backend development, their communication will be easier.&lt;/p&gt;

&lt;p&gt;This is one of the reasons for such concepts as &lt;a href="https://en.wikipedia.org/wiki/T-shaped_skills" rel="noopener noreferrer"&gt;T-shape&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/DevOps" rel="noopener noreferrer"&gt;Devops&lt;/a&gt; and &lt;a href="https://en.wikipedia.org/wiki/TestOps" rel="noopener noreferrer"&gt;TestOps&lt;/a&gt; emerged.&lt;/p&gt;

&lt;p&gt;To summarise the outcomes of the ‘less links’ principle:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;get a client (or their representative) right in the team&lt;/li&gt;
&lt;li&gt;figure out what minimal amount of people with what specialisations your team needs&lt;/li&gt;
&lt;li&gt;don’t separate specialists into sub-teams, have them focused on delivering what the client needs&lt;/li&gt;
&lt;li&gt;make sure their knowledge overlaps&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This will reduce the information loss and therefore reduce ‘&lt;a href="https://dl.acm.org/doi/abs/10.1109/ICSE.2017.20" rel="noopener noreferrer"&gt;waste&lt;/a&gt;’:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Waste is any activity that produces no value for the customer or user. This depends on the product you’re building.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In the following article, I will cover the concept of quality loss due to system design peculiarities.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
