<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Productivity on Brave New Geek</title><link>https://bravenewgeek.com/tag/productivity/</link><description>Recent content in Productivity on Brave New Geek</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 10 Jun 2022 10:25:44 -0600</lastBuildDate><atom:link href="https://bravenewgeek.com/tag/productivity/index.xml" rel="self" type="application/rss+xml"/><item><title>Meeting notes lose value the moment you finish writing them—and it’s time to fix that</title><link>https://bravenewgeek.com/meeting-notes-lose-value-the-moment-you-finish-writing-them-and-its-time-to-fix-that/</link><pubDate>Fri, 10 Jun 2022 10:25:44 -0600</pubDate><guid>https://bravenewgeek.com/meeting-notes-lose-value-the-moment-you-finish-writing-them-and-its-time-to-fix-that/</guid><description>&lt;p&gt;I like to be prepared in meetings. In some ways it’s probably an innate part of my personality, but it also became more important to me as my role has changed throughout my career. In particular, the first time I became an engineering manager is when I started to become a more diligent notetaker and meeting preparer. I think this is largely because my job shifted from being output-centric to more people- and meeting-centric. I still took notes and prepared when I was a software engineer, but it was for a very different context and purpose. As an engineer, my work centered around code output. As a manager, my work instead centered around coordinating, following up, and supporting my team. If you’ve never worked as a manager before, this probably just sounds like paper-pushing, but it’s actually a lot of work—and important! The work product is just &lt;em&gt;different&lt;/em&gt; from that of an individual contributor.&lt;/p&gt;</description></item><item><title>We suck at meetings</title><link>https://bravenewgeek.com/we-suck-at-meetings/</link><pubDate>Tue, 10 Nov 2020 13:16:18 -0600</pubDate><guid>https://bravenewgeek.com/we-suck-at-meetings/</guid><description>&lt;p&gt;&lt;img loading="lazy" src="https://bravenewgeek.com/wp-content/uploads/2020/11/dilbert.gif"&gt;&lt;/p&gt;
&lt;p&gt;I’ve worked as a software engineer, manager, consultant, and business owner. All of these jobs have involved meetings. What those meetings look like has varied greatly.&lt;/p&gt;
&lt;p&gt;As an engineer, meetings typically entailed technical conversations with peers, one-on-ones with managers, and planning meetings or demos with stakeholders.&lt;/p&gt;
&lt;p&gt;As a manager, these looked more like quarterly goal-setting with engineering leadership, one-on-ones with direct reports, and decision-making discussions with the team.&lt;/p&gt;
&lt;p&gt;As a consultant, my day often consists of talking to clients to provide input and guidance, communicating with partners to develop leads and strategize on accounts, and meeting with sales prospects to land new deals.&lt;/p&gt;</description></item><item><title>Scaling DevOps and the Revival of Operations</title><link>https://bravenewgeek.com/scaling-devops-and-the-revival-of-operations/</link><pubDate>Wed, 18 Apr 2018 10:07:42 -0500</pubDate><guid>https://bravenewgeek.com/scaling-devops-and-the-revival-of-operations/</guid><description>&lt;p&gt;Operations is going through a renaissance right now. With the move to cloud, the increasing amount of automation, and the increasing &lt;em&gt;importance&lt;/em&gt; of automation, Ops as we know it is reinventing itself out of necessity. Infrastructure is becoming more and more sophisticated—and commoditized—and practices are just now starting to grow up around that. So while some worry about robots taking our jobs, the reality is more about how automation will help augment us to build better software and focus on higher-value things. It’s not so much about the &lt;em&gt;distant&lt;/em&gt; future—whatever that may hold—so much as it is about the next five to ten years, what Operations looks like in that timeframe, and why I think it has to retool.&lt;/p&gt;</description></item><item><title>More Environments Will Not Make Things Easier</title><link>https://bravenewgeek.com/more-environments-will-not-make-things-easier/</link><pubDate>Wed, 11 Apr 2018 15:49:47 -0500</pubDate><guid>https://bravenewgeek.com/more-environments-will-not-make-things-easier/</guid><description>&lt;p&gt;Microservices are &lt;a href="https://bravenewgeek.com/service-disoriented-architecture/"&gt;hard&lt;/a&gt;. They require extreme discipline. They require a lot more upfront thinking. They introduce integration challenges and complexity that you otherwise wouldn’t have with a monolith, but service-oriented design is an important part of scaling organization structure. Hundreds of engineers all working on the same codebase will only lead to angst and the inability to be nimble.&lt;/p&gt;
&lt;p&gt;This requires a pretty significant change in the way we think about things. We’re creatures of habit, so if we’re not careful, we’ll just keep on applying the same practices we used before we did services. And that will end in frustration.&lt;/p&gt;</description></item><item><title>The Future of Ops</title><link>https://bravenewgeek.com/the-future-of-ops/</link><pubDate>Wed, 03 May 2017 20:12:57 -0500</pubDate><guid>https://bravenewgeek.com/the-future-of-ops/</guid><description>&lt;p&gt;Traditional Operations isn’t going away, it’s just retooling. The move from on-premise to cloud means Ops, in the classical sense, is largely being outsourced to cloud providers. This is the buzzword-compliant &lt;em&gt;NoOps movement&lt;/em&gt;, of which many call the “successor” to DevOps, though that word has become &lt;a href="https://medium.com/@cindysridharan/what-is-devops-5b0181fdb953"&gt;pretty diluted&lt;/a&gt; these days. What this leaves is a thin but crucial slice between Amazon and the products built by development teams, encompassing infrastructure automation, deployment automation, configuration management, log management, and monitoring and instrumentation.&lt;/p&gt;</description></item><item><title>Pain-Driven Development: Why Greedy Algorithms Are Bad for Engineering Orgs</title><link>https://bravenewgeek.com/pain-driven-development-why-greedy-algorithms-are-bad-for-engineering-orgs/</link><pubDate>Fri, 07 Apr 2017 15:33:00 -0500</pubDate><guid>https://bravenewgeek.com/pain-driven-development-why-greedy-algorithms-are-bad-for-engineering-orgs/</guid><description>&lt;p&gt;I recently wrote about the importance of understanding &lt;a href="https://bravenewgeek.com/decision-impact/"&gt;decision impact&lt;/a&gt; and why it’s important for building an empathetic engineering culture. I presented the distinction between &lt;em&gt;pain displacement&lt;/em&gt; and &lt;em&gt;pain deferral&lt;/em&gt;, and this was something I wanted to expand on a bit.&lt;/p&gt;
&lt;p&gt;When you distill it down, I think what’s at the heart of a lot of engineering orgs is this idea of “pain-driven development.” When a company grows to a certain size, it develops limbs, and each of these limbs has its own pain receptors. This is when empathy becomes important because it becomes harder and less natural. These limbs of course are teams or, more generally speaking, silos. Teams have a natural tendency to operate in a way that minimizes the amount of pain they feel.&lt;/p&gt;</description></item><item><title>Decision Impact</title><link>https://bravenewgeek.com/decision-impact/</link><pubDate>Wed, 05 Apr 2017 19:53:34 -0500</pubDate><guid>https://bravenewgeek.com/decision-impact/</guid><description>&lt;p&gt;I think a critical part of building an empathetic engineering culture is understanding &lt;em&gt;decision impact&lt;/em&gt;. This is a blindspot that I see happening a lot: a deliberate effort to understand the effects caused by a decision. How does adopting X affect operations? Does our dev tooling support this? Is this architecture supported by our current infrastructure? What are the compliance or security implications of this? Will this scale in production? A particular decision might save you time, but does it create work or slow others down? Are we just &lt;em&gt;displacing&lt;/em&gt; pain somewhere else?&lt;/p&gt;</description></item><item><title>Shit Rolls Downhill</title><link>https://bravenewgeek.com/shit-rolls-downhill/</link><pubDate>Thu, 14 Apr 2016 10:43:09 -0500</pubDate><guid>https://bravenewgeek.com/shit-rolls-downhill/</guid><description>&lt;p&gt;Building software of significant complexity is tough because a lot of pieces have to come together and a lot of teams have to work in concert to be successful. It can be extraordinarily difficult to get everyone on the same page and moving in tandem toward a common goal. Product development is largely an &lt;a href="https://bravenewgeek.com/product-development-is-a-trust-fall/"&gt;exercise in trust&lt;/a&gt; (or perhaps more accurately, &lt;em&gt;hiring&lt;/em&gt;), but even if you have the “right” people—people you can trust and depend on to get things done—you’re only halfway there.&lt;/p&gt;</description></item><item><title>Product Development is a Trust Fall</title><link>https://bravenewgeek.com/product-development-is-a-trust-fall/</link><pubDate>Tue, 05 May 2015 18:15:23 -0500</pubDate><guid>https://bravenewgeek.com/product-development-is-a-trust-fall/</guid><description>&lt;p&gt;A couple weeks ago, Marty Cagan gave an outstanding &lt;a href="http://www.ustream.tv/recorded/61491014"&gt;talk&lt;/a&gt; at CraftConf on why products fail despite having great engineering teams. In it, he calls out many of the common mistakes made by teams, and I think there is an underlying theme: &lt;em&gt;trust&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Product development is a trust fall. In order to be successful, a chain of trust must be established from the business all the way down to the engineers. If any point in that chain is compromised, the integrity of the product—and specifically its success—is put in jeopardy.&lt;/p&gt;</description></item><item><title>No More Ninjas</title><link>https://bravenewgeek.com/no-more-ninjas/</link><pubDate>Mon, 09 Dec 2013 11:04:29 -0600</pubDate><guid>https://bravenewgeek.com/no-more-ninjas/</guid><description>&lt;p&gt;How does a software company attract talent? Compensation? That’s how they attract &lt;em&gt;people&lt;/em&gt;. Free lunches and foosball tables? Keep guessing.&lt;/p&gt;
&lt;p&gt;The most effective way for a company to bag top-tier engineers is simple: &lt;strong&gt;let developers be developers&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="engineers-drive-innovation"&gt;Engineers Drive Innovation&lt;/h3&gt;
&lt;p&gt;Software is a symbiotic creature, and there are two ways a product is built: from the top down and the bottom up. Top-down development means that requirements are curated by and flow from the business, product owners, and managers, downward to the engineers. With the latter, developers explore new ideas and use technology that may be outside the organization’s standard gamut. Ideas for new products or features are born and pushed up to product owners where they can be cultivated.&lt;/p&gt;</description></item><item><title>Discipline in Prototyping</title><link>https://bravenewgeek.com/discipline-in-prototyping/</link><pubDate>Mon, 10 Jun 2013 19:33:31 -0600</pubDate><guid>https://bravenewgeek.com/discipline-in-prototyping/</guid><description>&lt;p&gt;Writing software doesn’t require discipline, but writing &lt;em&gt;good&lt;/em&gt; software does. I would argue that the vast majority of tech debt in projects results from PoCs/prototypes/spikes. The code from these typically aren’t intended to make it into production, but they almost invariably do in some capacity.&lt;/p&gt;
&lt;p&gt;“I won’t bother writing unit tests for this code, it’s purely exploratory.”&lt;/p&gt;
&lt;p&gt;The code grows…&lt;/p&gt;
&lt;p&gt;“It’s just a rough proof-of-concept.”&lt;/p&gt;
&lt;p&gt;…and grows…&lt;/p&gt;
&lt;p&gt;“It won’t make it to production!”&lt;/p&gt;</description></item><item><title>Productivity Over Process</title><link>https://bravenewgeek.com/productivity-over-process/</link><pubDate>Sun, 09 Jun 2013 00:14:14 -0600</pubDate><guid>https://bravenewgeek.com/productivity-over-process/</guid><description>&lt;p&gt;It seems like every software company you talk to will boast about how they use the latest development process du jour—Agile, Lean, XP, Kanban—pick your poison. What’s interesting is that the people evangelizing their chosen methodology are typically managers, not developers, almost emphasizing the process more than the product. Startups and other young tech companies seem to be particularly guilty of this (after all, every time someone utters the words “lean startup”, an angel investor gets his wings).&lt;/p&gt;</description></item><item><title>How is Software Valued?</title><link>https://bravenewgeek.com/how-is-software-valued/</link><pubDate>Sat, 08 Jun 2013 22:48:34 -0600</pubDate><guid>https://bravenewgeek.com/how-is-software-valued/</guid><description>&lt;p&gt;I was talking to a friend a few weeks ago who was putting together a business presentation for potential investors. He was developing a plan for a campground kiosk system that would rely on GIS data to allow guests to view and check in to camp sites. The plan was reasonable enough and mostly feasible. He carefully considered all the costs—licensing for a third-party GIS, kiosk hardware, line trenching—and then there was software.&lt;/p&gt;</description></item></channel></rss>