<?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: DaedTech</title>
    <description>The latest articles on DEV Community by DaedTech (@daedtechllc).</description>
    <link>https://dev.to/daedtechllc</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%2Forganization%2Fprofile_image%2F629%2F8540bdf1-f8ba-4000-acd9-7aa16c7f8f4d.jpg</url>
      <title>DEV Community: DaedTech</title>
      <link>https://dev.to/daedtechllc</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/daedtechllc"/>
    <language>en</language>
    <item>
      <title>The Renaissance of the Problem Domain as a First-Class Concern</title>
      <dc:creator>Erik Dietrich</dc:creator>
      <pubDate>Thu, 30 May 2019 03:03:01 +0000</pubDate>
      <link>https://dev.to/daedtechllc/the-renaissance-of-the-problem-domain-as-a-first-class-concern-1cb9</link>
      <guid>https://dev.to/daedtechllc/the-renaissance-of-the-problem-domain-as-a-first-class-concern-1cb9</guid>
      <description>&lt;p&gt;Hey, look at that — I’m writing a blog post again!  Seriously, apologies for the lull, but, hey, life happens.&lt;/p&gt;

&lt;p&gt;Enough of that, though.  Let’s dive into some realio-trulio, software related content.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2017/07/Leonardo-Da-Vinci-as-Plumber-e1522210259874.jpg"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ra1DdPWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://daedtech.com/wp-content/uploads/2017/07/Leonardo-Da-Vinci-as-Plumber-e1522210259874.jpg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  I Read an Interesting (Horrifying) Tale This Morning
&lt;/h2&gt;

&lt;p&gt;Lately, instead of starting my day blearily looking at my phone and the emails that have trickled in while I slept, I’ve been starting each day with unstructured reading and chatting.  I randomly read my feed, talk to people on Slack, watch a Youtube video, or take some research flight of fancy.&lt;/p&gt;

&lt;p&gt;Anything goes as long as it’s:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Not completely mindless&lt;/li&gt;
&lt;li&gt;Not directly related to work I’ll do&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I can’t recommend this practice enough, especially for the self-employed set.  It stimulates creativity and sort of gets all of the things that normally distract me out of the way.&lt;/p&gt;

&lt;p&gt;But I digress.  The real point of this mini-anecdote is to say that I read &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~blog.cleancoder.com/uncle-bob/2019/05/18/737-Max-8.html"&gt;a blog post from Uncle Bob Martin&lt;/a&gt; this morning.  It’s a compelling read, as his posts generally are, and it talks about the recent Boeing crashes.&lt;/p&gt;

&lt;p&gt;Here’s something that jumped out at me, though, somewhat oblique to the narrative, and relatively mundane in an otherwise pretty grim tale.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Rather, programmers must [have] intimate knowledge of the domain they are programming in. If you are writing code for aviation, you’d better know a &lt;em&gt;lot&lt;/em&gt; about the culture, disciplines, and practices of aviation.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And then, this, at the end:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We have to know the business domains we are coding for.&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2016/05/Newton-Getting-Bonked-with-an-Apple-e1531793909485.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8R59YbyU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://daedtech.com/wp-content/uploads/2016/05/Newton-Getting-Bonked-with-an-Apple-e1531793909485.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Fraught Relationship Between “Craft” and Domain Knowledge
&lt;/h2&gt;

&lt;p&gt;This begs the question: are these “done-right” Boeing engineers programmers that happen to have aviation expertise, or are they aviation professionals that happen to program?  If you find yourself saying, “both,” I’ll treat you to a witticism that I like from the agile world, designed as kryptonite to the project manager that proclaims all user stories top priority:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If everything is a priority, then nothing is, so I’ll choose for you.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And so it goes here.  If you say that these Boeing software engineers should be both “programmer” and “aviation professional,” first and foremost, they’ll choose for you.  And, which do you think they’ll choose.  My guess is the “programmer” since, when they leave their jobs at Boeing in somewhere between 9 and 27 months to go program at a startup or whatever, they will cease to be “aviation professionals.”&lt;/p&gt;

&lt;p&gt;Now, a big part of this story is, obviously, the domain transience of today’s software developer.  But another part is the focus on “craft.”&lt;/p&gt;

&lt;p&gt;My &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/software-craftsmanship-glass-ceiling/"&gt;opinion on the craft guild metaphor&lt;/a&gt; is no secret to long time readers.  We’ve &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/taking-the-guild-metaphor-too-far/"&gt;taken it too far&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2017/04/KNIGHT-AND-HORSE-e1517977061989.jpg"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jZnS7aKX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://daedtech.com/wp-content/uploads/2017/04/KNIGHT-AND-HORSE-e1517977061989.jpg" alt="Don't sacrifice your positioning strategy to code-jousting sites, as illustrated by this joust-ready knight."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Software is neither a craft in the practical or the ontological sense.  We don’t build software so that our customers might enjoy the aesthetic qualities of code well written, nor do we form local labor cartels for collective bargaining and go sleep in software engineers’ attics at age 11 that we might learn from them.&lt;/p&gt;

&lt;p&gt;Software-as-a-craft is really a vibe.  It says, “I care about the quality of the code that I write.”&lt;/p&gt;

&lt;p&gt;And caring about that is inarguably a good thing.  But a hanger-on to that vibe tends to come in the form of “I care about the quality of the code that I write first and foremost above other concerns.”&lt;/p&gt;

&lt;p&gt;Other concerns like, say, what problem domain you’re working in.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I can do excellent work in any industry or domain, if I abide by clean code principles and care about my work.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  The Bigger Picture: Are We Categorizing Software Work in a Fundamentally Flawed Way?
&lt;/h2&gt;

&lt;p&gt;Of course, a focus on craft is just one source of this attitude — the first one that came to mind (doubtless because I was reading Uncle Bob’s blog).&lt;/p&gt;

&lt;p&gt;It can also happen with hacker culture or the startup scene.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Whatever, man, airplanes or air conditioners, jetting websites or betting websites, I just sling teh codez.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Regardless of our attitude toward writing the software, our relationship with it defines how we identify in the corporate world.  We are software {engineers,developers,whatevers} first, and everything else secondarily.&lt;/p&gt;

&lt;p&gt;This was, no doubt, more reasonable decades ago when professional software people numbered far fewer.  But now, there are something like 20 million software developers, so segmentation naturally had to emerge.&lt;/p&gt;

&lt;p&gt;But what does this look like?  Well:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;React developer&lt;/li&gt;
&lt;li&gt;Embedded engineer&lt;/li&gt;
&lt;li&gt;Full-stack web developer&lt;/li&gt;
&lt;li&gt;.NET programmer&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Rather than:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Aviation programmer&lt;/li&gt;
&lt;li&gt;E-commerce programmer&lt;/li&gt;
&lt;li&gt;Sports gambling programmer&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As a collective industry (whose justifiability I might increasingly debate), we haven’t specialized by customer, domain, vertical, or anything else externally understandable.  Instead, we took our navel-gazing focus on the discipline itself, and doubled down on it over and over again, by specializing in our own tools.&lt;/p&gt;

&lt;p&gt;This inside baseball form of specialization is so ill-suited — so opaque — that an &lt;em&gt;entire industry (recruiting)&lt;/em&gt; has emerged to do nothing but help laypeople understand what we do.  Don’t quite believe it?  Imagine telling your grandparents that you’re a “react developer” and then imagine if that conversation wouldn’t go better if you’d brought a recruiter along to translate.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2014/10/LiveLongAndProsper.jpg"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_61LDZS3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://daedtech.com/wp-content/uploads/2014/10/LiveLongAndProsper-e1559139830770.jpg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  But Other Disciplines Stretch Across Domains!
&lt;/h2&gt;

&lt;p&gt;At this point, I imagine you might have a predictable and understandable counterpoint.  By implication, I’m demanding that software development, as a vocation, behave differently than, say architects, mechanical engineers, or even human resources.  Aren’t we just following those well-worn tracks toward a pattern?&lt;/p&gt;

&lt;p&gt;Well, yes.  And that’s the crux of the problem, because software development is &lt;em&gt;unprecedented&lt;/em&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Have any of those other vocations grown exponentially in a short amount of time?&lt;/li&gt;
&lt;li&gt;Do any of them utterly dominate modern commerce?&lt;/li&gt;
&lt;li&gt;Are they so intensely generalized with so few educational/certification barriers to entry?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I could go on, but hopefully you get the idea.  We’re applying historical precedent to the unprecedented, and I think it’s time that we revisit whether that makes sense.&lt;/p&gt;

&lt;p&gt;Architects design buildings, so you could sub-group them by the sorts of buildings they design.  But sub-dividing them by who eventually occupies the building doesn’t make sense, and subdividing them by what sorts of software and what kinds of pencils they use is utterly ridiculous.&lt;/p&gt;

&lt;p&gt;And, if you start to look at disciplines that have withstood the test of time, you’ll see that they balance the discipline with the beneficiary.  For instance, all lawyers pursue common education and certification, but they then market and categorize their services in the language of their clients:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Divorce attorneys help people get divorced.&lt;/li&gt;
&lt;li&gt;Criminal defense attorneys help people mount criminal defenses.&lt;/li&gt;
&lt;li&gt;Patent attorneys help — alright, you get the idea.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Notice that they don’t bill themselves as “Plessy v Ferguson Attorney” and then leave it to you to figure out whether that means they can help you with a racial profiling civil rights case.&lt;/p&gt;

&lt;h2&gt;
  
  
  I’d Like to See a Rise in Picking a Problem Domain
&lt;/h2&gt;

&lt;p&gt;If you were hoping that I had some grand plan to remedy all of this, then I’m going to disappoint you.  I’m aiming more for “food for thought” with all of this.  I don’t have the script for redefining software specialties, nor a sufficiently large soapbox that it would work if I did.&lt;/p&gt;

&lt;p&gt;But I will say that I’d like to see a de-emphasis on specialty by programming skills/tools/techs, and a renaissance of a focus on domain.  Like Uncle Bob, I think this would make for better software, more fit for purpose.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2017/05/Factory-Dude-w-Drill-Press-e1516081300764.jpg"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xbBqAKyJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://daedtech.com/wp-content/uploads/2017/05/Factory-Dude-w-Drill-Press-e1516081300764.jpg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But I also think it would help usher in the &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~daedtech.com/book/"&gt;Developer Hegemony&lt;/a&gt; vision.&lt;/p&gt;

&lt;p&gt;One of the reason that software developers are such afterthoughts in the software development decisions companies make is that those companies heap 7 layers of management atop us.  Why?  Because we can’t be bothered to learn domains, drifting instead from codebase to codebase, utterly abdicating purpose and context to those earning more money.&lt;/p&gt;

&lt;p&gt;Programming is so dominant — so ubiquitous now — that I think a better model might be the iconic “proficient with Microsoft Excel.”  In other words, there aren’t really people that go from company to company saying, “whatever man, I just do Excel.”  Instead, they just quietly use Excel to make them better at their actual job.&lt;/p&gt;

&lt;p&gt;As I’ve tried to describe with this idea of &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~daedtech.com/your-job-title-of-tomorrow-efficiencer/"&gt;the “efficiencer”&lt;/a&gt;, the real, core value prop of software development is time savings through automation.  Imagine how efficient we might become in that if we picked a vertical/domain and learned it, focused on it, and became expert in it, rather than just wandering around tweaking ORMs for different companies.&lt;/p&gt;

&lt;p&gt;We’d get better at niching and specializing, and we’d elevate ourselves into important decision making roles.  And, to Uncle Bob’s point, this increased agency might just position us to impact the world for the better in powerful and gravely important ways.&lt;/p&gt;

&lt;p&gt;The post &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/the-renaissance-of-the-problem-domain-as-a-first-class-concern/"&gt;The Renaissance of the Problem Domain as a First-Class Concern&lt;/a&gt; appeared first on &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com"&gt;DaedTech&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kh-7K_CX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://feeds.feedblitz.com/%257E/i/602532394/0/daedtech/www" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kh-7K_CX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://feeds.feedblitz.com/%257E/i/602532394/0/daedtech/www" alt=""&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://feeds.feedblitz.com/_/19/602532394/daedtech/www"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VX_ozh8x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://assets.feedblitz.com/i/email20.png" alt=""&gt;&lt;/a&gt; &lt;a href="https://feeds.feedblitz.com/_/20/602532394/daedtech/www"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UD7DXNLR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://assets.feedblitz.com/i/rss20.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>thelifeofaprogrammer</category>
    </item>
    <item>
      <title>Software Career Anti-Patterns: Career Development by Coincidence</title>
      <dc:creator>Erik Dietrich</dc:creator>
      <pubDate>Tue, 02 Apr 2019 22:46:59 +0000</pubDate>
      <link>https://dev.to/daedtechllc/software-career-anti-patterns-career-development-by-coincidence-3h92</link>
      <guid>https://dev.to/daedtechllc/software-career-anti-patterns-career-development-by-coincidence-3h92</guid>
      <description>&lt;p&gt;It’s been a while since I’ve posted a hot take.  And, to be fair, this is probably a lukewarm take, at best.  I’m taking a slightly aged tweet, and I’m going to react to it in a slightly oblique way.&lt;/p&gt;

&lt;p&gt;Here’s the tweet.&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1110363543147155461-163" src="https://platform.twitter.com/embed/Tweet.html?id=1110363543147155461"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1110363543147155461-163');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1110363543147155461&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;I do have opinions on this tweet, and I’ll get to those momentarily.  But, as I go through this post, I’m actually going to relate it more to a different facet of the programming world.  Specifically, I think this has an tangential-but-important tie-in with how &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/programmer-skill-fetish-contextualized/" rel="noopener noreferrer"&gt;we tend to fetishize skill&lt;/a&gt; in the tech world, in spite of &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/programming-skills-arent-important/" rel="noopener noreferrer"&gt;it being not that important&lt;/a&gt; in the scheme of things.&lt;/p&gt;

&lt;p&gt;But let’s put a pin in that.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2017/07/Code-Wars-1-e1517977170576.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2017%2F07%2FCode-Wars-1-e1517977170576.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conference Speaking is an Content Marketing Activity
&lt;/h2&gt;

&lt;p&gt;If you’ve followed this blog for a while, you might have seen me write about this exact topic.  I titled the post, “&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/conference-speaking-isnt-good-career-make-good/" rel="noopener noreferrer"&gt;Conference Speaking Isn’t Good for Your Career Until You Make it Good&lt;/a&gt;,” and that title serves nicely as a spoiler for the content.&lt;/p&gt;

&lt;p&gt;My premise is somewhat softer than Brianne’s, in that I neither discount speaking outright, nor do I make an _ad hominem _implication that youth and naivete govern speakers’ decision-making.  My take is less that conference speaking is pointless and more that people tend to do it quite inefficiently.&lt;/p&gt;

&lt;p&gt;In a professional context, conference speaking is a marketing activity and, more specifically, a _content __marketing _activity.  You deliver value for free (in most cases) with the idea that investing your time and effort this way will pay off later.  Other activities, including ones that Brianne mention also fall into this bucket.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Writing blog posts&lt;/li&gt;
&lt;li&gt;Building FOSS utilities&lt;/li&gt;
&lt;li&gt;Starting a Youtube channel&lt;/li&gt;
&lt;li&gt;Building a social media following&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  And Conference Speaking is Uniquely Prone to Content Marketing Inefficiency
&lt;/h2&gt;

&lt;p&gt;Now, as someone who spent years creating content inefficiently, I have plenty of perspective here.  I wrote &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~daedtech.com/blog-whatever-i-please/" rel="noopener noreferrer"&gt;a blog like a journal&lt;/a&gt;, instead of an asset, and it led to all kinds of opportunities and new careers.  So, I did it, and it worked, albeit less efficiently than it could have.&lt;/p&gt;

&lt;p&gt;So against this backdrop, I’ll offer my own spin on Brianne’s comments, which I think make sense.  When you miss the point with blog posts, software, social media, videos, etc, you can always rework that content into more efficient forms.  You can’t do that with speaking, which is ephemeral.&lt;/p&gt;

&lt;p&gt;In other words, while all forms of content marketing activities are prone to these inefficiencies, conference speaking makes it uniquely hard to course correct later.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2016/07/Battleship-e1468386585663.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2016%2F07%2FBattleship-e1554239217519.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Probably the biggest source of inefficiency for us in the software world is the preoccupation with impressing our peers instead of speaking to our buyers.  In the throes of this preoccupation, we generate all sorts of content aimed at a sub-optimal audience and delivered in a sub-optimal way.  To efficiently help our careers, we’d measure our content not in terms of software developers following us on Twitter, but in terms of dollars of salary offered to us by dev managers and VPs.&lt;/p&gt;

&lt;p&gt;And, when we eventually discover this truth, we have a much easier time re-tuning old blog posts and videos than we do going back in time and speaking to different audiences.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Reactions to Brianne’s Tweet Tell an Interesting Story
&lt;/h2&gt;

&lt;p&gt;So far, I think you’d find yourself hard pressed to argue with my point, since I present it in something of a mercenary way.  I’m ultimately measuring everything (as is Brianne, I think) in dollars and cents and eliding the personal development benefits.&lt;/p&gt;

&lt;p&gt;In fact, let’s now look at some of those.  Here are some (paraphrased) counter points in the Twitter thread.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It’s rewarding to advocate for something you’re passionate about and to give something to the community.&lt;/li&gt;
&lt;li&gt;You can build confidence by speaking to large groups of people.&lt;/li&gt;
&lt;li&gt;Speaking helps you cultivate and improve a variety of non-technical skills, such as teaching, organization and, well, speaking.&lt;/li&gt;
&lt;li&gt;You learn a great deal about the subject matter of your talk.&lt;/li&gt;
&lt;li&gt;With the other speakers and the audience, you network, make friends, and form human connections.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These cover a bit of ground, but there is a fairly heavy emphasis on personal development.  You reap a lot of intangible benefits from giving talks, many of which have to do with making you a better person in some capacity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Career Development by Coincidence
&lt;/h2&gt;

&lt;p&gt;And now we get into the meat of what’s troubling me and why I started writing this post.  Brianne made a pragmatic, efficiency-driven argument.  And the lion’s share of the response wasn’t to refute her point, &lt;em&gt;per se&lt;/em&gt;, but rather to come back with “efficiency isn’t everything.”&lt;/p&gt;

&lt;p&gt;As I mentioned earlier, we in the programming world seem to assume that if we just sharpen miscellaneous skills that we have, the corporate world will take care of us.  “I’ll get better at mentoring, asynchronous programming, and public speaking, and that’ll pay off for me professionally… somehow… eventually.”&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2017/03/Sharpening-a-saw.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2017%2F03%2FSharpening-a-saw-e1554244925346.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This sort of attitude reminds me of an iconic concept in the programming world: &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://pragprog.com/the-pragmatic-programmer/extracts/coincidence" rel="noopener noreferrer"&gt;programming by coincidence&lt;/a&gt;.  Programming by coincidence happens when we get in the habit of saying, “I don’t really know why that works, but I’m glad it does, so let’s move on.”&lt;/p&gt;

&lt;p&gt;Career development happens in a similar way.  You plug along, improving whatever skills you feel like improving in a given month or year, and trust that fate will take care of you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Not All Skills Help Your Career Equally, or Even at All
&lt;/h2&gt;

&lt;p&gt;I saw Brianne’s tweet and the responses last week, and it wasn’t until today that I understood what about the debate had bothered me.  And, truly, it’s this concept of career development by coincidence.  Viewed through that lens, here’s how I see the discussion.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Brianne: If you take a data-driven, business-like look at your own career, you’ll see that speaking isn’t a very efficient strategy.&lt;/p&gt;

&lt;p&gt;Popular Response: I disagree.  I speak and I like my career, so my strategy must be working.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Is public speaking a valuable skill for a programmer?  Is mentoring?  How about power point?  The answer to all of these is “probably, to some degree.”&lt;/p&gt;

&lt;p&gt;But is a mastery of any of them going to make a difference to your salary and org chart position?  That gets a lot harder to say.&lt;/p&gt;

&lt;p&gt;The most direct counter-examples in the discussion thread are ones of immediate opportunities.  People talk about getting a “break” as a result of a talk: landing a new client or job.  And, while those are clearly wins, what’s less clear is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Does, say, landing a client, actually move your career needle?&lt;/li&gt;
&lt;li&gt;And does it even bring ROI from the time spent prepping the talk?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Now, to be clear, I’m not saying the the answer to any of this is “no.”&lt;/p&gt;

&lt;p&gt;I’m just saying that, absent specific metrics, we can’t really say “yes,” either.  And, if you’re going to be engaging in marketing activity for the sake of improving your situation, you should want a path to “yes” as surely as a SaaS company measuring conversions from a landing page.&lt;/p&gt;

&lt;h2&gt;
  
  
  De-emphasize Building Skills and Emphasize Driving Outcomes
&lt;/h2&gt;

&lt;p&gt;“Skills” are largely internal concerns, personal to the individual.  They scratch our itch for mastery and allow us to mark developmental progress through life.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2016/09/yosemite.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2016%2F09%2Fyosemite-e1554243782697.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But they don’t matter all that much to clients or even employers.  Oh, sure those entities will ask about or demand skills, but in the same way you ‘demand’ skill from your tax prep company or accountant.&lt;/p&gt;

&lt;p&gt;You don’t &lt;em&gt;really _care about their skills.  You care about _your outcomes&lt;/em&gt; that you perceive to depend on those skills.&lt;/p&gt;

&lt;p&gt;And you certainly don’t care about how well your tax preparer crochets or how accomplished a pool player your mechanic is.  Some skills are totally irrelevant to outcomes you’re supposed to provide, meaning developing them has legitimately zero commercial interest.  Commerce isn’t an RPG where any marginal skill development makes your overall character stronger.&lt;/p&gt;

&lt;p&gt;Skill development requires two things to benefit your career:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Relevance to the outcomes you deliver.&lt;/li&gt;
&lt;li&gt;Consistent, &lt;em&gt;measurable&lt;/em&gt; ability to improve those same outcomes as you develop it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;But since these things are both outcome-focused, why not just cut out the middle man and focus on outcomes?&lt;/p&gt;

&lt;p&gt;If you want to write/blog/speak/whatever as a hobby because you enjoy the feeling of improvement and creation, then, by all means, do that.  I have for years on this blog.  But if you want those same activities to be demonstrably good for your career, you need to have a plan beyond the universe rewarding you for leveling up.&lt;/p&gt;

&lt;p&gt;So start with outcomes, work your way back to the activities, and make sure you can measure your progress.  Anything else is career development by coincidence.&lt;/p&gt;

&lt;p&gt;The post &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/software-career-anti-patterns-career-development-by-coincidence/" rel="noopener noreferrer"&gt;Software Career Anti-Patterns: Career Development by Coincidence&lt;/a&gt; appeared first on &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com" rel="noopener noreferrer"&gt;DaedTech&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ffeeds.feedblitz.com%2F~%2Fi%2F600275038%2F0%2Fdaedtech%2Fwww" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ffeeds.feedblitz.com%2F~%2Fi%2F600275038%2F0%2Fdaedtech%2Fwww"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://feeds.feedblitz.com/_/19/600275038/daedtech/www" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.feedblitz.com%2Fi%2Femail20.png"&gt;&lt;/a&gt; &lt;a href="https://feeds.feedblitz.com/_/20/600275038/daedtech/www" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.feedblitz.com%2Fi%2Frss20.png"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>fromdevelopertoco</category>
    </item>
    <item>
      <title>Should You Take a 100% Pair Programming Job?</title>
      <dc:creator>Erik Dietrich</dc:creator>
      <pubDate>Wed, 20 Mar 2019 04:28:42 +0000</pubDate>
      <link>https://dev.to/daedtechllc/should-you-take-a-100-pair-programming-job-41mh</link>
      <guid>https://dev.to/daedtechllc/should-you-take-a-100-pair-programming-job-41mh</guid>
      <description>&lt;p&gt;Pair programming.  Understanding of this topic may vary among the readership.&lt;/p&gt;

&lt;p&gt;Some of you might have the vague notion that it means two programmers working together… or something.  Others of you might have a more solid grasp of particulars and a vocabulary that includes terms like “driver-navigator” and “expert-novice.”  And, a few may even understand the full origin story of pair programming as a core plank of &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~www.extremeprogramming.org/rules.html" rel="noopener noreferrer"&gt;the eXtreme Programming (XP) approach&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hey, Look, a Pair Programming Reader Question
&lt;/h2&gt;

&lt;p&gt;I’ll soon return to that origin story.  But first, let’s look at why I’m talking about this at all.  I’m actually gearing up to answer a reader question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I was interviewed by a company that [does] full pair programming.  I hate the idea of spending all my day with somebody looking at me writing code.  What do you think about it?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So to clarify a little here, we’re talking about a company that subscribes, full stop, to the XP rule that “all production code is pair programmed.”  For all intents and purposes, this means that dev teams pair program 100% of the time as a rule.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2019/03/people-chained-together-in-front-of-a-computer.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2019%2F03%2Fpeople-chained-together-in-front-of-a-computer-e1553055831511.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Should you take a job at such a company?&lt;/p&gt;

&lt;p&gt;It’s honestly hard for me to say for any given person since my advice would be so very tailored to your individual personality and preferences.  So rather than immediately give a thumbs up or down, I thought maybe I’d explore the topic of pair programming more broadly.&lt;/p&gt;

&lt;p&gt;Since my publication of &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~daedtech.com/book/" rel="noopener noreferrer"&gt;Developer Hegemony&lt;/a&gt; and subsequent &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~daedtech.com/slice-life-money-works/" rel="noopener noreferrer"&gt;departure from a traveling consulting/training life&lt;/a&gt;, I’ve made this blog increasingly one about &lt;em&gt;software developer empowerment&lt;/em&gt;.  Today, I’d like to look at the subject of that pair programming through that relatively uncommon lens.&lt;/p&gt;

&lt;p&gt;I want to examine not whether pair programming is a Good Thing (TM), but whether it’s a good thing for  &lt;strong&gt;you&lt;/strong&gt; , as a software developer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Understanding my Pairing Biases, Such as They Are
&lt;/h2&gt;

&lt;p&gt;Before I do that, I should acknowledge past work along these lines and writing on the subject.  Frankly, it’s all been pretty pairing-positive.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I did &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://www.pluralsight.com/courses/making-business-case-for-best-practices" rel="noopener noreferrer"&gt;a course for Pluralsight&lt;/a&gt; in which I helped software developers make the business case for pair programming to skeptical management.&lt;/li&gt;
&lt;li&gt;I’ve written how-to/explainer posts professionally, like &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://stackify.com/pair-programming-styles/" rel="noopener noreferrer"&gt;this one for Stackify&lt;/a&gt;, about pair programming.&lt;/li&gt;
&lt;li&gt; And I’ve &lt;em&gt;participated&lt;/em&gt; in pairing a lot over the years in situations ranging from the &lt;em&gt;ad hoc&lt;/em&gt; to the formal.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But, on the flip side, &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/why-social-situations-exhaust-introverts-a-programmers-take/" rel="noopener noreferrer"&gt;I’m also a pretty textbook introvert&lt;/a&gt;.  This leads me to regard pair programming personally in the same way &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~daedtech.com/three-martini-open-office-plans/" rel="noopener noreferrer"&gt;I do open office plans&lt;/a&gt;: fun, tiring, and not how I feel most productive.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2016/06/Three-Martini-Lunchers-e1511929473984.png" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2016%2F06%2FThree-Martini-Lunchers-e1511929473984.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And this leads me to a relatively bemused point of view: able to make the case that pair programming benefits the team/company perhaps more than the individual, at least for some individuals.  This is important to consider for the remainder of the post.&lt;/p&gt;

&lt;p&gt;I say this because I’m going to argue that there are actually a number of reasons to be leery of this work situation, notwithstanding its effectiveness.&lt;/p&gt;

&lt;h2&gt;
  
  
  XP and the Origin of Pairing as a Popular Practice
&lt;/h2&gt;

&lt;p&gt;But first, let’s return to the pairing and &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://en.wikipedia.org/wiki/Extreme_programming#History" rel="noopener noreferrer"&gt;XP origin story&lt;/a&gt;.  I wasn’t there, of course, so I won’t offer narrative details or editorializing, &lt;em&gt;per se&lt;/em&gt;.  But it sure &lt;em&gt;looks like&lt;/em&gt; a handful of prominent developer-consultant types (who would later sign &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://agilemanifesto.org/" rel="noopener noreferrer"&gt;the so-called agile manifesto&lt;/a&gt;) came together and said, more or less, emphasis mine:&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2014/11/DevSkills.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2014%2F11%2FDevSkills.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Hey, if things like code review and test-first approaches are good things in &lt;strong&gt;programming&lt;/strong&gt; , let’s take them to the *&lt;em&gt;extreme *&lt;/em&gt; and see what happens.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And it turned out that what happened was good.  It went well enough that it generated early wiki pages, articles, books, etc.  And the rest, as they say, is history.&lt;/p&gt;

&lt;p&gt;Now, of course, this inspired an industry of emulation.  We, as a working society, love nothing more than to attempt to reproduce things that went well for others.  And, why not.  This is one of the most fundamental ways to learn and grow.&lt;/p&gt;

&lt;p&gt;But it also bears consideration that the XP &lt;em&gt;rules&lt;/em&gt; were opt-in for the developer-consultants authoring them — “hey, what if we did X, let’s try it and see what happens.”  But those opt-in rules will be &lt;strong&gt;mandatory&lt;/strong&gt; for you, the workaday dev, 2 decades later, as you debate whether or not to go work at this company.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Case Against 100% Pair Programming as Desirable for You, a Developer
&lt;/h2&gt;

&lt;p&gt;With the backdrop securely in place, let’s get to the meat of it.  I’ll go into my reasoning for why you might want to pump the brakes on accepting such an offer.&lt;/p&gt;

&lt;p&gt;Please note that this only applies to people skeptical of 100% pairing.  I’m not talking about a company where developers &lt;em&gt;sometimes&lt;/em&gt; pair, which is, frankly, probably 90% of companies with more than one developer.  And if you really like pairing, then, by all means, take the job.  The approach has a ton of upside, and you like it, so go nuts.&lt;/p&gt;

&lt;p&gt;The case that I’m making here is orthogonal to the efficacy of the practice, and understand that I’m not weighing in on whether or not teams should adopt 100% pairing policies.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The Throwback Emphasis on Physical Presence
&lt;/h3&gt;

&lt;p&gt;Let’s start with something easy to grok.  A lot of the practices and philosophies of the 1990s movement toward “agile” are meat-space focused, which makes sense for an era of fax machines and Citrix, or whatever.  You sit in open office plan bullpens, write things on physical note cards that you stick to a wall, have daily stand-ups, and sit next to someone at a desk all day, every day.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2014/11/QuillStandards.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2014%2F11%2FQuillStandards.jpg"&gt;&lt;/a&gt;In 1999, sure.  But in 2019… really?&lt;/p&gt;

&lt;p&gt;If you go get yourself a seat at any enterprise agile transformation, you’ll see an emphasis on change.  In some cases, it’s change toward the modern: ditch the dress code, install Jenkins, do DevOps, etc.  But, in some cases, it goes the throwback route: get out of the project management tool, use a dry erase board, and &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://www.nbcnews.com/business/business-news/why-are-big-companies-calling-their-remote-workers-back-office-n787101" rel="noopener noreferrer"&gt;get everyone into the same room&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And so we see “throwback as progress” when it comes to development approaches.  Now, I’m a fully remote worker and fully remote business owner, and have been for years.  So I’m obviously biased, and I’m not going to lobby for remote over physical presence in this venue.  (I’ll just say that it’s hard to imagine ever going back.)&lt;/p&gt;

&lt;p&gt;But I &lt;em&gt;will&lt;/em&gt; point out that a 100% pairing team/company is disproportionately likely to have rigid policy around butts-in-seats.  If you’re pairing 100% of the time, it’s hard to justify risking a flaky remote collaboration tool.  And it’s also hard to justify any kind of flex hours.&lt;/p&gt;

&lt;p&gt;So you’re probably looking at a job where you need to be in your chair from 8:30 to 5:00, ready to interact socially, or else you’re letting your team down.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. A 100% Pairing Mandate is Ipso Facto Micromanagement
&lt;/h3&gt;

&lt;p&gt;Switching gears a little, let’s talk agency (or lack thereof).  All of our devs pair 100% of the time is a formalized micromanagement policy.&lt;/p&gt;

&lt;p&gt;Over the years and in my coaching/consulting travels, I’ve dealt with constant chafing between managers and developers on the subject of unit tests.  I hear things about management not letting developers write automated tests.  And I hear things about management wanting to see unit test coverage.&lt;/p&gt;

&lt;p&gt;I advise management to &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://blog.ndepend.com/code-coverage-not-management-concern/" rel="noopener noreferrer"&gt;knock it off&lt;/a&gt;.  They shouldn’t be meddling in developers’ unit tests any more than they should be in how frequently they compile their code or check Stack Overflow.  &lt;em&gt;How&lt;/em&gt; the developers work should be up to those developers.&lt;/p&gt;

&lt;p&gt;So how is the decision to pair or not any different?&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2014/11/Clipboard.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2014%2F11%2FClipboard.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There’s a particular irony here, given that agile methodologies tout flat structures and self-organizing teams.  There was, of course, no hypocrisy when Kent Beck et. al. created the methodology because &lt;em&gt;they were self-organizing&lt;/em&gt; when they laid out these rules.  But you’re not self-organizing when you join a “pairing mandatory as official policy” company.&lt;/p&gt;

&lt;p&gt;So understand that you’re joining a company that micromanages how you create software.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. You’re Joining a Company Where Extrovert is the “Correct” Personality Type
&lt;/h3&gt;

&lt;p&gt;Let’s get something out of the way.  No matter how many talks I see on “pairing for introverts” or whatever, pairing is decidedly &lt;em&gt;not&lt;/em&gt; for introverts.  Honestly titled, those talks would be “Slightly Mitigating Your Inevitable Exhaustion and Burn-Out.”&lt;/p&gt;

&lt;p&gt;But you don’t see this kind of honesty.  And the reason you don’t is because of the extrovert ideal that Susan Cain defines in &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://amzn.to/2Y12eCl" rel="noopener noreferrer"&gt;her excellent book on introversion&lt;/a&gt;.  With the rise of the salesman persona, extroversion became the “correct” personality.&lt;/p&gt;

&lt;p&gt;Think about school growing up.  If you didn’t like the idea of group work or if you wanted to read a book at recess, the teacher felt a need to “correct” your behavior so that you wouldn’t earn the “anti-social” label.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2014/01/Interrupted.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2014%2F01%2FInterrupted.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This carries on into the workplace.  If public speaking, group work, schmoozing, and small talk make you uncomfortable, the world tells you that you need to fix yourself to get ahead.  “Here are 5 helpful tips that will cure you of that backward impulse to like solitude.”&lt;/p&gt;

&lt;p&gt;Not all companies are equal in terms of embracing the extrovert ideal.  And you can safely bet that a company demanding 100% pairing is outstripping the competition when it comes to trying to fix your broken introvert personality.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. The Company is Playing Not to Lose
&lt;/h3&gt;

&lt;p&gt;I’ll get more into the benefits of pairing for the company in the next section, but a big part of that benefit involves keeping developers focused and relatively mistake-free.  The flip side of that is that you don’t have bursts of individual creativity and inspiration uniquely afforded by blind alleys and “unproductive” digressions.&lt;/p&gt;

&lt;p&gt;Take the iconic (though apparently debated) example of &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://www.inc.com/bryan-adams/12-ways-to-encourage-more-free-thinking-and-innovation-into-any-business.html" rel="noopener noreferrer"&gt;Google’s 20% time&lt;/a&gt;.  The essential premise is “we believe enough in our employees that we’ll give them a day each week to work on whatever they want, however they want, and trust that their undirected efforts will somehow pay off in seismic gains.”&lt;/p&gt;

&lt;p&gt;That’s playing to win.  It’s the equivalent of a football team up 14 in the 4th quarter and throwing downfield anyway.  100% mandatory pairing, on the other hand, is kneeling on the ball and then punting in that metaphor — playing not to lose.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2013/07/FootballGame.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2013%2F07%2FFootballGame-e1553048691400.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A policy like this indicates that the company is primarily interested in predictable velocity out of the development staff, rather than brilliant ideas or game-changing developments.  And there’s nothing at all wrong with that — it’s perfectly rational.  The expected value of predictable, error-minimized work is going to be higher than the expected value of blind alleys with the hope of game-changers.&lt;/p&gt;

&lt;p&gt;I’m mentioning this only so that you understand what you’re likely getting yourself into: a company that wants you to plug away predictably and unremarkably for 8 hours a day.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Subordinate Status Signaling
&lt;/h3&gt;

&lt;p&gt;I’ll close with an argument that’s somewhat challenging to capture in just a few hundred words.  I expanded on it at length in Developer Hegemony, but I’ll Cliff’s Notes it here.&lt;/p&gt;

&lt;p&gt;Developers in mandatory pairing arrangements give off more of an air of juniority/subordinacy than their peers who are free to work as they please.  To understand what I mean, consider three undeniable benefits of pairing as far as the business is concerned.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Collective code ownership spreads knowledge around the team and &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://en.wikipedia.org/wiki/Bus_factor" rel="noopener noreferrer"&gt;lowers “bus factor.”&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Pairing means constant code review, which means fewer escaped defects and design issues.&lt;/li&gt;
&lt;li&gt;Developers in pairing situations won’t face as many distractions and interruptions.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;All good stuff, right?  But now, let’s look at it through a dispassionate, corporate valuation lens.  Here’s the CFO looking at you.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Pairing makes individual developer resources more fungible.&lt;/li&gt;
&lt;li&gt;It helps overcome the inherent sloppiness of software developers.&lt;/li&gt;
&lt;li&gt;It prevents developers from engaging their natural tendency to goldbrick.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;And, once the CFO is done with her stroll through the open office bullpen, do you think she heads back to her table and pair-CFOs with her pair-CFO?&lt;/p&gt;

&lt;p&gt;Of course not — that’s not something leaders do.  She heads back to her &lt;em&gt;office&lt;/em&gt; and &lt;em&gt;works alone&lt;/em&gt;.  In fact, this is not something even scrum masters, project managers and analysts do.  It’s something that only developers do because only developers need accounta-bili-buddies.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2015/06/RobotProgramming.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2015%2F06%2FRobotProgramming.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Of course, nobody is saying this stuff, or probably even consciously thinking it.  It’s just the subtle vibe that will permeate the organization.  And it will tend to make leadership less inclined to listen to developers and to make technical positions “stickier” for anyone interested in lateral transitions or moving into leadership.  At least it will until you can find a way to extract yourself from giving off subordination signals.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Case for 100% Pair Programming as Desirable for You, a Developer
&lt;/h2&gt;

&lt;p&gt;This section is going to be comically short and sweet.  For me to make the case against 100% pairing took an awful lot of explanation.  To make the case for it is easy.&lt;/p&gt;

&lt;p&gt;Ask yourself this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Do you enjoy pair programming and the thought of doing it all the time?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If the answer is yes, then go for it.  Highly collaborative dev teams are effective, and this approach is good for the company.  If it’s also good for you, then you’re signing up for an “everybody wins” kind of situation.&lt;/p&gt;

&lt;p&gt;Mandated pairing has a number of subtle downsides for your individual career (and some not-so subtle, if you’re an introvert).  But it also has some huge upsides for you, including:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Really, really quick learning if you’re new and working with more experienced folks.&lt;/li&gt;
&lt;li&gt;Experience early and often as a mentor/coach, potentially leading to nice consultative career opportunities.&lt;/li&gt;
&lt;li&gt;A crash course in office politics and navigating others’ personalities.&lt;/li&gt;
&lt;li&gt;A hard to replicate sense of camaraderie with your team when it goes well.&lt;/li&gt;
&lt;li&gt;Higher likelihood of making friend-associates that will last the duration of your career.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;And, of course, you’re ideologically aligned with your company and its interests.  And I can’t think of any circumstance where that’s a bad thing (provided you don’t &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~daedtech.com/defining-the-corporate-hierarchy/" rel="noopener noreferrer"&gt;go idealist&lt;/a&gt; and lose sight of your own interests).&lt;/p&gt;

&lt;h2&gt;
  
  
  So, Should You Take the Job or Not?
&lt;/h2&gt;

&lt;p&gt;Normally, any article that weighs the pros and cons of something cops out in the conclusion with “so, as you can see, it depends and it’s up to you.”  I’m not going to do that here, because what’s the fun in that?&lt;/p&gt;

&lt;p&gt;Given the framing of this reader question, I would suggest &lt;em&gt;to this reader&lt;/em&gt; that &lt;strong&gt;you probably should not take this job&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/wp-content/uploads/2017/07/Expensive-Hobo-Gear-e1509315266880.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdaedtech.com%2Fwp-content%2Fuploads%2F2017%2F07%2FExpensive-Hobo-Gear-e1509315266880.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’m an introvert, and I’m not a huge fan of group work.  But I did find that each time I took a gig that was more collaborative than I was used to, I wound up enjoying the collaborative situation more than I thought I would.  Not only was it not a nightmare, but a more open office plan or more pairing on the job actually proved enjoyable.&lt;/p&gt;

&lt;p&gt;But it also tended to prove not sustainable, either. I’d work all day collaboratively and then work extra hours after everyone left because all of the collaboration didn’t feel like real work.  Eventually, I’d tire, not from the long hours, but from the constant collaboration.  And I’d move on or maneuver to a different project or role.&lt;/p&gt;

&lt;p&gt;My point is this.  You’ll probably enjoy the pairing more than you’d think.  But given your gut proclivity, it will also probably wear on you.&lt;/p&gt;

&lt;p&gt;There are a lot of companies out there with a lot of different philosophies.  I’d find one that hews closer to your your own.&lt;/p&gt;

&lt;p&gt;The post &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com/should-you-take-a-100-pair-programming-job/" rel="noopener noreferrer"&gt;Should You Take a 100% Pair Programming Job?&lt;/a&gt; appeared first on &lt;a href="http://feeds.feedblitz.com/~/t/0/0/daedtech/www/~https://daedtech.com" rel="noopener noreferrer"&gt;DaedTech&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ffeeds.feedblitz.com%2F~%2Fi%2F599819814%2F0%2Fdaedtech%2Fwww" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ffeeds.feedblitz.com%2F~%2Fi%2F599819814%2F0%2Fdaedtech%2Fwww"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://feeds.feedblitz.com/_/19/599819814/daedtech/www" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.feedblitz.com%2Fi%2Femail20.png"&gt;&lt;/a&gt; &lt;a href="https://feeds.feedblitz.com/_/20/599819814/daedtech/www" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.feedblitz.com%2Fi%2Frss20.png"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>youaskedforit</category>
    </item>
  </channel>
</rss>
