{"id":45953,"date":"2021-12-01T13:00:40","date_gmt":"2021-12-01T18:00:40","guid":{"rendered":"https:\/\/sdtimes.com\/?p=45953"},"modified":"2023-07-14T16:58:20","modified_gmt":"2023-07-14T20:58:20","slug":"measuring-developer-productivity-isnt-as-simple-as-it-sounds","status":"publish","type":"post","link":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/","title":{"rendered":"Measuring developer productivity isn&#8217;t as simple as it sounds"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">When developers lie awake at night, they&#8217;re likely not thinking that they didn&#8217;t turn around enough tickets that day, or write a certain number of lines of code. Their fear is that they&#8217;ve broken something, and that they&#8217;ll be in trouble.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In the meantime, C-level managers are primarily concerned with innovation, creating new products and enhancing old ones. So there is a natural divide when it comes to assessing how productive developers are.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Eric Minick, vice president and head of product at CodeLogic, said, &#8220;I think what a lot of our developers would celebrate most is, if someone said, &#8216;Today, I took 300 lines of code that were a mess, and I consolidated it down to 40 lines of code that are clean. And so my net code for the day was minus 260 lines. And that would be celebrated wildly. And so lines of code is about as toxic a measure as you could come up with, as it encourages bad behavior.&#8221;<\/span><\/p>\n<p><strong>RELATED CONTENT: <a href=\"https:\/\/sdtimes.com\/softwaredev\/how-codelogic-helps-make-developers-more-productive\/\">How CodeLogic helps make developers more productive<\/a><\/strong><\/p>\n<p><span style=\"font-weight: 400;\">&#8220;You know, a development team or an IT shop, looking at that developer who took that 300 lines of mess and turned it into 40 lines of elegant clean code, as being productive,&#8221; he continued. &#8220;Somebody in a business suite, however, might say, &#8216;You are not advancing our product, you added no new features, nothing happened. How are you being productive?&#8217; &#8220;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Gartner analyst Thomas Murphy explained, &#8220;We advise clients that they should not be focused on individual productivity metrics \u2013 software is about teams \u2013 thus we look at team productivity and things are measured more in agile terms of Story Velocity, but that is useful more to understand a backlog and how long it will take.&#8221;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It&#8217;s this misalignment between the business and IT that continues to exist &#8212; despite the ideals of Agile development and DevOps that should bring the sides closer &#8212; that makes defining developer productivity difficult. It is Minick&#8217;s opinion that from a measurement point of view, most development teams have yet to make business outcomes their goals. Organizations might be using OKRs or KPIs to say that in the next six months, we&#8217;re going to improve conversion rates by 5%. But developers are saying, &#8216;We&#8217;re still closing 100 tickets a week, we are good at our jobs.&#8217; Minick said, &#8220;I don&#8217;t think most organizations have really tightened up the alignment to bring the business metric into the definition of success for the application team. But we&#8217;re starting to see the beginnings of that.&#8221;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Gartner&#8217;s Murphy said, &#8220;From a metrics perspective you should be shifting away from metrics that are &#8216;output&#8217; driven and to metrics that are &#8216;outcome&#8217; driven.\u00a0 Thus are we delivering the business outcomes \u2013 which means it isn\u2019t just an engineering thing.&#8221;\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">One thing that organizations have started to embrace in an attempt to make developers more productive is the notion of the developer experience, with the belief that giving developers the best possible employment experience increases their productivity. That experience can range from things like the chair they sit in, the size of the monitors they use while working, the software tools they are given to do their jobs, and the hours they put in.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">&#8220;There&#8217;s nothing more frustrating than having to close down a bunch of apps just to start running your tests and get your own software to run, and being constrained by a cheap laptop, or a monitor that&#8217;s too small or anything like that,&#8221; Minick said. &#8220;You want loyalty from your developers. Give them a powerful box and a big screen, like step one. Step two \u2026 big investment in better chairs, standing desks, all of these things that set up the developer to be comfortable, alert, helping and able to concentrate for a long time on their code and be effective.&#8221;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">After that, he said, make sure they&#8217;ve got the right tools at their disposal. Make sure they&#8217;ve got a good development environment, that they&#8217;ve got the other software packages they need.<\/span><\/p>\n<h5><strong>Changing roles for developers<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">One of the difficulties in assessing developer productivity is the fact that their job is much broader than it was in the days when developers primarily wrote and maintained code. Now, they&#8217;re more involved in testing, more involved in security and in compliance and governance.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Minick said measuring things like features delivered by the development team is better than measuring the amount of code generated. And, organizations that take productivity seriously will put in place measurements for &#8216;good behavior,&#8217; such as how code coverage is changing, and is technical debt increasing or being reduced. Or, he noted, crediting developers for taking something highly complex and streamlining it to something simpler. While there was no feature added by that work, the technical debt score should go down, and that would be the productive activity.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A productive development team, according to Minick, will deliver features, mitigate risk, and fix bugs. &#8220;You want to make sure you&#8217;re balancing your investment in a development team pretty well across those things,&#8221; Minick said. &#8220;If you&#8217;re delivering no features, you&#8217;re probably failing. At the same time, if you&#8217;re delivering only features and accumulating a tremendous amount of technical debt and risk, you&#8217;re setting yourself up for failure in the future. And it&#8217;s really a business decision how to weigh that investment, but that should be done consciously, and too often, it&#8217;s not.&#8221;<\/span><\/p>\n<h5><strong>How to make development teams more productive<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">One of the ways organizations can increase feature flow is through value stream management, with which they can identify the impediments that slow productivity and work to remove them. &#8220;So metrically, this is where the DORA metrics come in, or the Flow Framework, and this is what comes into a &#8216;Value Stream Management&#8217; system,&#8221; Murphy said, &#8220;but with this you are also looking at what are the bottlenecks. &#8216;Ahh, it takes two hours to provision a test system, that limits how quickly we can build and test software &#8212; how can we make that faster.'&#8221;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This is especially true as it pertains to the various tools developers need to be productive. There are communication tools such as Teams and Slack, CI tools, IDEs, test tools, code repositories and security tools. Some of this tool sprawl is necessary, Murphy said. &#8220;I have to have an IDE, a compiler and such,&#8221; he said. &#8220;The hope would be that I don&#8217;t have Teams and Slack and email for communications.&#8221;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Many organizations have more than one tool for continuous integration, which could be because teams have the freedom to select the tool they feel is best to do their job. Murphy noted that Gartner has seen a shift toward choosing standard solutions and tools that take a more integrated approach. &#8220;More clients are buying Jira\/Confluence\/Bitbucket\/Bamboo\u2026 than did in the past, where it may have been Jira\/Confluence\/Git-something\/Jenkins\/Artifactory,&#8221; he said, adding that this will be a slow evolution, because of sunk investments and personal preference, but that organizations want to control their spend, be more efficient and have the ability to move resources between teams.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This is another aspect where the business and IT seem to be at odds, though organizations are recognizing the value of having business knowledge in and with the technology. The way many of them are meeting this challenge is through retraining. CodeLogic&#8217;s Minick said that&#8217;s the best way to go, as opposed to hiring more developers, &#8220;because you have the knowledge of business in those people, and you want to keep that in house.&#8221; This approach can keep the deep business understanding of how the business works as close to the developers as possible.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Gartner&#8217;s Murphy said organizations do a mixed job of providing time and resources to support learning and upskilling, which is leading to growth in informal training &#8212; communities of practice, dojos, use of StackOverflow, and more use of pairing and mentoring. &#8220;Entities are having to rethink strategies and tools to support how new people are onboarded, how to get effective knowledge transfer and how to evolve employees,&#8221; he said. &#8220;But this also means you have to be prepared to train them in the new hot technology, pay them more, or (risk losing them).&#8221;<\/span><\/p>\n<h5><strong>A matter of trust<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">It&#8217;s critical that IT and the business have trust, so that when the business asks IT why something will take six months to complete, the answer is framed in such a way that the business can decide if it wants to proceed down that path or not. According to Minick, you&#8217;re starting to see more product management people put into that intersection.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Business talks about how quickly features and bug fixes can be released. But developers talk about velocity. Velocity, as any student of physics would recall, is different than speed. &#8220;Velocity is a vector, velocity has direction,&#8221; Minick said. &#8220;And what we really need is speed in the right direction. That&#8217;s why people are pulling in the SME [subject matter expert] knowledge to business, to better make sure that when we write a lot of code \u2026 it&#8217;s what the business wants &#8212; and more specifically, what they need. And that often requires someone who has a good understanding of the business to translate from what the business says, which may not be precise enough or clear enough. There may be very ambiguous language to actual features that development can build that will actually push the application and therefore the business in the right direction.&#8221;<\/span><\/p>\n<h5><strong>The crushing demand for modern apps<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">The demand by the business for new applications and modern experiences far outstrips the availability of developers to do the work &#8212; a labor shortage that has plagued IT in the United States for nearly two decades. Combine that with the growing complexity of modern applications and the near-constant introduction of new platforms, technologies and modes of interaction, and &#8212; Gartner&#8217;s Murphy said &#8212; overloaded engineers &#8220;have a\u00a0 feeling of, &#8216;Here, let me toss a few more bricks on the hod.&#8217;\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This, he said, is part of the reason that there is such growth in low-code solutions, to ease the burden on &#8220;pro-code&#8221; developers. The solutions, Murphy said, support &#8220;that fusion team where developers create new services and components and citizen developers compose those into business applications.&#8221;<\/span><\/p>\n<h5><strong>Keep it as simple as you can<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">In the face of all this, Murphy suggests organizations do what they can to simplify things. Among the steps they can take are reducing the number of tools where possible, and being consistent in business direction\/objectives so you have a unified set of activities that everyone is actioning toward.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Going forward, organizations are looking to AI-assisted coding to help with productivity, but Murphy noted that will &#8220;take a while to perfect.&#8221; In the meantime, he said, &#8220;toolchains will be a bit messy, and our &#8216;legacy challenge&#8217; of unforeseen needs of the future will always dog us.&#8221;<\/span><\/p>\n<h5><strong>A guide to developer productivity tools<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">Developer productivity encompasses the use of many different kinds of tools &#8212; a comfortable chair and two big monitors, for example. On the software side, developers need tools for writing code, integrating code changes, testing, putting security around their work, and more. What follows is a sampling of tools in each productivity category.<\/span><\/p>\n<p><b>Code repositories<\/b><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">Bitbucket<\/span><\/li>\n<li><span style=\"font-weight: 400;\">ClearCase<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Codebase<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Eclipse<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Git<\/span><\/li>\n<li><span style=\"font-weight: 400;\">GitHub<\/span><\/li>\n<li><span style=\"font-weight: 400;\">GitLab<\/span><\/li>\n<li><span style=\"font-weight: 400;\">IntelliJ IDEA<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Java.net<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Netbeans<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Perforce<\/span><\/li>\n<li><span style=\"font-weight: 400;\">SourceForge<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Subversion<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Visual Studio\u00a0<\/span><\/li>\n<\/ul>\n<p><b>DevOps platforms<\/b><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">Atlassian Bamboo<\/span><\/li>\n<li><span style=\"font-weight: 400;\">AWS Code Pipeline<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Azure Pipelines<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Bitbucket Pipelines<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Broadcom<\/span><\/li>\n<li><span style=\"font-weight: 400;\">CircleCI<\/span><\/li>\n<li><span style=\"font-weight: 400;\">CloudBees<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Codefresh<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Digital.ai<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Harness.io<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Jenkins<\/span><\/li>\n<li><span style=\"font-weight: 400;\">LaunchDarkly<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Optimizely<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Split Software<\/span><\/li>\n<li><span style=\"font-weight: 400;\">TeamCity<\/span><\/li>\n<\/ul>\n<p><b>Collaboration tools<\/b><\/p>\n<ul>\n<li><a href=\"http:\/\/www.codelogic.com\"><strong>CodeLogic<\/strong><\/a><\/li>\n<li><span style=\"font-weight: 400;\">Codenvy<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Codestream<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Engine Yard<\/span><\/li>\n<li><span style=\"font-weight: 400;\">JetBrains<\/span><\/li>\n<li><span style=\"font-weight: 400;\">SmartBear<\/span><\/li>\n<\/ul>\n<p><b>Communication tools<\/b><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">Google Mail<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Google Meet\u00a0<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Microsoft Teams<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Slack<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Trello<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Zoom<\/span><\/li>\n<\/ul>\n<p><b>Testing tools<\/b><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">Applitools<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Applause<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Eggplant<\/span><\/li>\n<li><span style=\"font-weight: 400;\">HCL Software<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Mabl<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Parasoft<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Progress Software<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Sauce Labs<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Testim<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Tricentis<\/span><\/li>\n<\/ul>\n<p><b>Security tools<\/b><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">Aqua Security<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Bridgeview<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Checkmarx<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Contrast Security<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Sonatype<\/span><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>When developers lie awake at night, they&#8217;re likely not thinking that they didn&#8217;t turn around enough tickets that day, or write a certain number of lines of code. Their fear is that they&#8217;ve broken something, and that they&#8217;ll be in trouble. In the meantime, C-level managers are primarily concerned with innovation, creating new products and  &hellip; <a class=\"read-more\" href=\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\">continue reading<\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":205,"featured_media":45954,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"cybocfi_hide_featured_image":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[2398,1],"tags":[15681,376,4484],"coauthors":[11448],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Measuring developer productivity isn&#039;t as simple as it sounds - SD Times<\/title>\n<meta name=\"description\" content=\"As modern applications grow more complex and developers are taking on more tasks, gauging productivity isn&#039;t as simple as counting lines of code anymore.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Measuring developer productivity isn&#039;t as simple as it sounds - SD Times\" \/>\n<meta property=\"og:description\" content=\"As modern applications grow more complex and developers are taking on more tasks, gauging productivity isn&#039;t as simple as counting lines of code anymore.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\" \/>\n<meta property=\"og:site_name\" content=\"SD Times\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SDTimesD2\" \/>\n<meta property=\"article:published_time\" content=\"2021-12-01T18:00:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-07-14T20:58:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"660\" \/>\n\t<meta property=\"og:image:height\" content=\"371\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"David Rubinstein\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@sdtimes\" \/>\n<meta name=\"twitter:site\" content=\"@sdtimes\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"David Rubinstein\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\"},\"author\":{\"name\":\"David Rubinstein\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/c5979508a52529c65d558ca23cb64a4a\"},\"headline\":\"Measuring developer productivity isn&#8217;t as simple as it sounds\",\"datePublished\":\"2021-12-01T18:00:40+00:00\",\"dateModified\":\"2023-07-14T20:58:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\"},\"wordCount\":1966,\"publisher\":{\"@id\":\"https:\/\/sdtimes.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg\",\"keywords\":[\"CodeLogic\",\"Gartner\",\"productivity\"],\"articleSection\":[\"Buyers Guide\",\"Latest News\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\",\"url\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\",\"name\":\"Measuring developer productivity isn't as simple as it sounds - SD Times\",\"isPartOf\":{\"@id\":\"https:\/\/sdtimes.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg\",\"datePublished\":\"2021-12-01T18:00:40+00:00\",\"dateModified\":\"2023-07-14T20:58:20+00:00\",\"description\":\"As modern applications grow more complex and developers are taking on more tasks, gauging productivity isn't as simple as counting lines of code anymore.\",\"breadcrumb\":{\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage\",\"url\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg\",\"contentUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg\",\"width\":660,\"height\":371,\"caption\":\"Portrait of an insomniac man trying to sleep in his bed\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/sdtimes.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Measuring developer productivity isn&#8217;t as simple as it sounds\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/sdtimes.com\/#website\",\"url\":\"https:\/\/sdtimes.com\/\",\"name\":\"SD Times\",\"description\":\"Software Development News\",\"publisher\":{\"@id\":\"https:\/\/sdtimes.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/sdtimes.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/sdtimes.com\/#organization\",\"name\":\"SD Times\",\"url\":\"https:\/\/sdtimes.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png\",\"contentUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png\",\"width\":225,\"height\":90,\"caption\":\"SD Times\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SDTimesD2\",\"https:\/\/x.com\/sdtimes\",\"https:\/\/www.linkedin.com\/company\/sdtimes\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/c5979508a52529c65d558ca23cb64a4a\",\"name\":\"David Rubinstein\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/image\/efe807ec0a4a29a22c1ba89dd5689fe2\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b3fdab44b2a65d11f93bdc301690be3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1b3fdab44b2a65d11f93bdc301690be3?s=96&d=mm&r=g\",\"caption\":\"David Rubinstein\"},\"description\":\"David Rubinstein is editor-in-chief of SD Times.\",\"url\":\"https:\/\/sdtimes.com\/author\/david-rubinstein\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Measuring developer productivity isn't as simple as it sounds - SD Times","description":"As modern applications grow more complex and developers are taking on more tasks, gauging productivity isn't as simple as counting lines of code anymore.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/","og_locale":"en_US","og_type":"article","og_title":"Measuring developer productivity isn't as simple as it sounds - SD Times","og_description":"As modern applications grow more complex and developers are taking on more tasks, gauging productivity isn't as simple as counting lines of code anymore.","og_url":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/","og_site_name":"SD Times","article_publisher":"https:\/\/www.facebook.com\/SDTimesD2","article_published_time":"2021-12-01T18:00:40+00:00","article_modified_time":"2023-07-14T20:58:20+00:00","og_image":[{"width":660,"height":371,"url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg","type":"image\/jpeg"}],"author":"David Rubinstein","twitter_card":"summary_large_image","twitter_creator":"@sdtimes","twitter_site":"@sdtimes","twitter_misc":{"Written by":"David Rubinstein","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#article","isPartOf":{"@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/"},"author":{"name":"David Rubinstein","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/c5979508a52529c65d558ca23cb64a4a"},"headline":"Measuring developer productivity isn&#8217;t as simple as it sounds","datePublished":"2021-12-01T18:00:40+00:00","dateModified":"2023-07-14T20:58:20+00:00","mainEntityOfPage":{"@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/"},"wordCount":1966,"publisher":{"@id":"https:\/\/sdtimes.com\/#organization"},"image":{"@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage"},"thumbnailUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg","keywords":["CodeLogic","Gartner","productivity"],"articleSection":["Buyers Guide","Latest News"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/","url":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/","name":"Measuring developer productivity isn't as simple as it sounds - SD Times","isPartOf":{"@id":"https:\/\/sdtimes.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage"},"image":{"@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage"},"thumbnailUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg","datePublished":"2021-12-01T18:00:40+00:00","dateModified":"2023-07-14T20:58:20+00:00","description":"As modern applications grow more complex and developers are taking on more tasks, gauging productivity isn't as simple as counting lines of code anymore.","breadcrumb":{"@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#primaryimage","url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg","contentUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2021\/12\/productivity.jpg","width":660,"height":371,"caption":"Portrait of an insomniac man trying to sleep in his bed"},{"@type":"BreadcrumbList","@id":"https:\/\/sdtimes.com\/softwaredev\/measuring-developer-productivity-isnt-as-simple-as-it-sounds\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sdtimes.com\/"},{"@type":"ListItem","position":2,"name":"Measuring developer productivity isn&#8217;t as simple as it sounds"}]},{"@type":"WebSite","@id":"https:\/\/sdtimes.com\/#website","url":"https:\/\/sdtimes.com\/","name":"SD Times","description":"Software Development News","publisher":{"@id":"https:\/\/sdtimes.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sdtimes.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/sdtimes.com\/#organization","name":"SD Times","url":"https:\/\/sdtimes.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/","url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png","contentUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png","width":225,"height":90,"caption":"SD Times"},"image":{"@id":"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SDTimesD2","https:\/\/x.com\/sdtimes","https:\/\/www.linkedin.com\/company\/sdtimes\/"]},{"@type":"Person","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/c5979508a52529c65d558ca23cb64a4a","name":"David Rubinstein","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/image\/efe807ec0a4a29a22c1ba89dd5689fe2","url":"https:\/\/secure.gravatar.com\/avatar\/1b3fdab44b2a65d11f93bdc301690be3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b3fdab44b2a65d11f93bdc301690be3?s=96&d=mm&r=g","caption":"David Rubinstein"},"description":"David Rubinstein is editor-in-chief of SD Times.","url":"https:\/\/sdtimes.com\/author\/david-rubinstein\/"}]}},"_links":{"self":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/45953"}],"collection":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/users\/205"}],"replies":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/comments?post=45953"}],"version-history":[{"count":6,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/45953\/revisions"}],"predecessor-version":[{"id":46023,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/45953\/revisions\/46023"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/media\/45954"}],"wp:attachment":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/media?parent=45953"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/categories?post=45953"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/tags?post=45953"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/coauthors?post=45953"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}