CINXE.COM

Developer Archives - Work Life by Atlassian

<!doctype html> <html lang="en-US"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="profile" href="http://gmpg.org/xfn/11"> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <!-- This site is optimized with the Yoast SEO plugin v23.6 - https://yoast.com/wordpress/plugins/seo/ --> <link media="all" href="https://atlassianblog.wpengine.com/wp-content/cache/autoptimize/css/autoptimize_4417afc2057836acb62c67c3e40a8515.css" rel="stylesheet"><title>Developer Archives - Work Life by Atlassian</title> <link rel="canonical" href="https://www.atlassian.com/blog/developer" /> <link rel="next" href="https://www.atlassian.com/blog/developer/page/2" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Developer Archives - Work Life by Atlassian" /> <meta property="og:url" content="https://www.atlassian.com/blog/developer" /> <meta property="og:site_name" content="Work Life by Atlassian" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@Atlassian" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"CollectionPage","@id":"https://www.atlassian.com/blog/developer","url":"https://www.atlassian.com/blog/developer","name":"Developer Archives - Work Life by Atlassian","isPartOf":{"@id":"https://www.atlassian.com/blog/#website"},"primaryImageOfPage":{"@id":"https://www.atlassian.com/blog/developer#primaryimage"},"image":{"@id":"https://www.atlassian.com/blog/developer#primaryimage"},"thumbnailUrl":"https://atlassianblog.wpengine.com/wp-content/uploads/2024/11/csd-13570-blog-1120x545_2x.png","breadcrumb":{"@id":"https://www.atlassian.com/blog/developer#breadcrumb"},"inLanguage":"en-US"},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.atlassian.com/blog/developer#primaryimage","url":"https://atlassianblog.wpengine.com/wp-content/uploads/2024/11/csd-13570-blog-1120x545_2x.png","contentUrl":"https://atlassianblog.wpengine.com/wp-content/uploads/2024/11/csd-13570-blog-1120x545_2x.png","width":2048,"height":997},{"@type":"BreadcrumbList","@id":"https://www.atlassian.com/blog/developer#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.atlassian.com/blog"},{"@type":"ListItem","position":2,"name":"Developer"}]},{"@type":"WebSite","@id":"https://www.atlassian.com/blog/#website","url":"https://www.atlassian.com/blog/","name":"Work Life by Atlassian","description":"Unleashing the potential of all teams with tips, tools, and practices","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.atlassian.com/blog/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}</script> <!-- / Yoast SEO plugin. --> <link rel='dns-prefetch' href='//atl-global.atlassian.com' /> <link rel='dns-prefetch' href='//stats.wp.com' /> <link rel="alternate" type="application/rss+xml" title="Work Life by Atlassian &raquo; Feed" href="https://www.atlassian.com/blog/feed" /> <link rel="alternate" type="application/rss+xml" title="Work Life by Atlassian &raquo; Comments Feed" href="https://www.atlassian.com/blog/comments/feed" /> <link rel="alternate" type="application/rss+xml" title="Work Life by Atlassian &raquo; Developer Category Feed" href="https://www.atlassian.com/blog/developer/feed" /> <script type="text/javascript"> /* <![CDATA[ */ window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/atlassianblog.wpengine.com\/wp-includes\/js\/wp-emoji-release.min.js"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); /* ]]> */ </script> <link rel="https://api.w.org/" href="https://atlassianblog.wpengine.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://atlassianblog.wpengine.com/wp-json/wp/v2/categories/13071" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://atlassianblog.wpengine.com/xmlrpc.php?rsd" /> <!-- Stream WordPress user activity plugin v4.0.2 --> <script src="https://atl-onetrust-wrapper.atlassian.com/assets/atl-onetrust-wrapper.min.js" data-domain="ed42d30f-c9f0-408c-b65a-cd77205ecdf5" data-test="false" data-geofence="false" data-sync="false" ></script> <meta name="google-site-verification" content="HNNnCkeVQ-w56fqPpX2TTEMRmta5QJ-bDunwoaUep-o" /> <meta name="google-site-verification" content="ayWGqoaWJhTnahPSpfLcla5clD7xdAgDPBxf8r9CXJ0" /> <!-- OneTrust Cookies Consent Notice (Production CDN, www.atlassian.com, en-GB) start --> <script> function OptanonWrapper() {} </script> <!-- OneTrust Cookies Consent Notice (Production CDN, www.atlassian.com, en-GB) end --> <!-- There is no amphtml version available for this URL. --><link rel="preload" as="style" href="https://atlassianblog.wpengine.com/wp-content/plugins/code-prettify/prettify/prettify.css" /><link rel="icon" href="https://atlassianblog.wpengine.com/wp-content/uploads/2017/10/android-chrome-256x256-96x96.png" sizes="32x32" /> <link rel="icon" href="https://atlassianblog.wpengine.com/wp-content/uploads/2017/10/android-chrome-256x256.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://atlassianblog.wpengine.com/wp-content/uploads/2017/10/android-chrome-256x256.png" /> <meta name="msapplication-TileImage" content="https://atlassianblog.wpengine.com/wp-content/uploads/2017/10/android-chrome-256x256.png" /> </head> <body class="archive category category-developer category-13071 group-blog hfeed"> <div id="page" class="site"> <a href="#content" class="skip-link screen-reader-text"data-event-container="skipToContentLink"data-event-component="link"data-label="Skip to main content"data-uuid="2335d4db1ab0b27c90e41ea660a98f94"data-event="clicked"data-schema-version="1" >Skip to main content</a> <header id="masthead" class="site-header product-news-header" role="banner"> <div class="top-bar"> <div class="container"> <div class="site-branding"> <p class="site-title"><a class="site-title__link" href="https://www.atlassian.com/"><span class="screen-reader-text">Atlassian</span></a></p> </div> <nav class="top-bar__menu"><ul id="main-top-nav" class="menu"><li id="menu-item-50464" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-50464"><a href="https://www.atlassian.com/blog" data-event-container="top-bar-blue-menu" data-event-component="link" data-label="Work Life" data-uuid="2be34ea2b466d57d286057a3d7d4462d" data-event="clicked" data-schema-version="1">Work Life</a> <div class="top-bar__description"> </div> </li> <li id="menu-item-50465" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-50465"><a href="https://www.atlassian.com/blog/product-news" data-event-container="top-bar-blue-menu" data-event-component="link" data-label="Products &amp; news" data-uuid="8a33a553749344705bfbaf63182236bb" data-event="clicked" data-schema-version="1">Products &#038; news</a> <div class="top-bar__description"> </div> </li> <li id="menu-item-50466" class="top-bar__menu-item-hover-arrow menu-item menu-item-type-custom menu-item-object-custom menu-item-50466"><a target="_blank" rel="noopener" href="https://www.atlassian.com/team-playbook" data-event-container="top-bar-blue-menu" data-event-component="link" data-label="Team Playbook" data-uuid="e0ef38224bbbc252de5b5e3c6ee7d28a" data-event="clicked" data-schema-version="1">Team Playbook</a> <div class="top-bar__description"> </div> </li> <li id="menu-item-50467" class="top-bar__menu-item-hover-arrow menu-item menu-item-type-custom menu-item-object-custom menu-item-50467"><a target="_blank" rel="noopener" href="https://atlassian.com/community" data-event-container="top-bar-blue-menu" data-event-component="link" data-label="Community" data-uuid="859a71bf49ae9e23fd1b0bf47f4cebcf" data-event="clicked" data-schema-version="1">Community</a> <div class="top-bar__description"> </div> </li> </ul></nav> <div class="top-bar__mobile"> <button class="top-bar__toggle"> More from Atlassian </button> </div> </div> </div> <div class="main-bar"> <div class="container"> <div class="site-header__home site-header__phoenix-product-news"> <a href="https://www.atlassian.com/blog/product-news" class="site-header__phoenix" rel="home"> <span>Products &amp; news</span> </a> </div> <div class="site-header__nav"> <div class="menu-product-news-container"><ul id="main-nav" class="product-news main-nav"><li class="closed menu-item-has-slider menu-slider-type-li menu-slider-count-3 slide-of-four menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children"><a href="https://www.atlassian.com/blog/product-news" class="nav-menu-item-title"><span>Products</span></a><div class="sub-menu"><div class="sub-menu__list-wrapper"><ul><li class="atlassian-apps-blue menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/add-ons" class=""><span>Apps</span></a></li><li class="atlassian-access menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/access" class=""><span>Atlassian Guard</span></a></li><li class="atlassian-bamboo menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/bamboo" class=""><span>Bamboo</span></a></li><li class="atlassian-bitbucket menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/bitbucket" class=""><span>Bitbucket</span></a></li><li class="atlassian-confluence menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/confluence" class=""><span>Confluence</span></a></li><li class="atlassian-crowd menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/crowd" class=""><span>Crowd</span></a></li><li class="atlassian-crucible menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/crucible" class=""><span>Crucible</span></a></li><li class="atlassian-fisheye menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/fisheye" class=""><span>Fisheye</span></a></li><li class="atlassian-halp menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/halp" class=""><span>Halp</span></a></li><li class="atlassian-jira menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/jira" class=""><span>Jira</span></a></li><li class="atlassian-jira-align menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/jira-align" class=""><span>Jira Align</span></a></li><li class="atlassian-jira-service menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/jira-service-management" class=""><span>Jira Service Management</span></a></li><li class="atlassian-opsgenie menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/opsgenie" class=""><span>Opsgenie</span></a></li><li class="atlassian-sourcetree menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/sourcetree" class=""><span>Sourcetree</span></a></li><li class="atlassian-statuspage menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/statuspage" class=""><span>Statuspage</span></a></li><li class="atlassian-trello menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/trello" class=""><span>Trello</span></a></li></ul></div></div></li><li class="closed menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children"><a href="#" class="nav-menu-item-title"><span>Topics</span></a><div class="sub-menu"><div class="sub-menu__list-wrapper"><ul><li class="topic-ai menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/artificial-intelligence" class=""><span>AI</span></a></li><li class="topic-agile menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/agile" class=""><span>Agile</span></a></li><li class="topic-engineering menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/atlassian-engineering" class=""><span>Atlassian Engineering</span></a></li><li class="topic-continuous-delivery menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/continuous-delivery" class=""><span>Continuous Delivery</span></a></li><li class="topic-developers menu-item menu-item-type-taxonomy menu-item-object-category current-menu-item"><a href="https://www.atlassian.com/blog/developer" class=""><span>Developers</span></a></li><li class="topic-devops menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/devops" class=""><span>DevOps</span></a></li><li class="topic-enterprise menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/enterprise" class=""><span>Enterprise</span></a></li><li class="topic-git menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/git" class=""><span>Git</span></a></li><li class="topic-it-service-management menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/it-service-management" class=""><span>IT Service Management</span></a></li><li class="topic-inside-atlassian menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/inside-atlassian" class=""><span>Inside Atlassian</span></a></li><li class="topic-project-management menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/project-management" class=""><span>Project Management</span></a></li><li class="topic-work-management menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/work-management" class=""><span>Work Management</span></a></li></ul></div></div></li><li class="topic-company-news menu-item menu-item-type-taxonomy menu-item-object-category"><a href="https://www.atlassian.com/blog/announcements" class="nav-menu-item-title"><span>Company News</span></a></li></ul></div> </div> <div class="site__subscribe"> <div class="menu-subscribe-container"><ul id="subscribe-menu" class="menu"><li id="menu-item-42251" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-42251"><a href="#" data-toggle="modal" data-target="#atlassian-modal" data-event-container="subscribe" data-event-component="link" data-label="Subscribe" data-uuid="ad96f4fde8863234742f428d8a544f6b" data-event="clicked" data-schema-version="1">Subscribe</a></li> </ul></div> </div> <div class="site__search"> <button class="search-toggle"> <i class="icon-search"></i> <span class="screen-reader-text">Search</span> </button> </div> <div class="site-header__menu-toggle"> <button class="hamburger menu-toggle" type="button" aria-controls="primary-menu" aria-expanded="false"> <span class="screen-reader-text">Primary Menu</span> <span class="hamburger-box"> <span></span> <span></span> <span></span> </span> </button> </div> </div> </div> <div class="search-wrapper"> <form class="search-form" action="https://www.atlassian.com/blog/" method="get"> <label class="screen-reader-text" for="search">Search in https://www.atlassian.com/blog/</label> <div class="row"> <div class="col-10"> <input type="text" class="search-input" name="s" id="search" placeholder="Search for something" value="" /> </div> <div class="col-1 offset-1"> <button class="search-submit" type="submit" data-event-container="searchForm" data-event-component="button" data-label="Search" data-uuid="37eb57a28d5b7f62ec52c63351f74e55" > <i class="icon-search" aria-hidden="true"></i> <span class="screen-reader-text">Search</span> </button> </div> </div> </form> </div> <nav id="site-navigation" class="main-navigation mobile-main-menu main-nav-mobile" role="navigation"> <div class="menu-products-news-mobile-container"><ul id="menu-products-news-mobile" class="mobile-nav"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-42255"><a href="#"><span>Products</span></a><div class='sub-menu__mobile'><ul><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-42477"><a href="https://www.atlassian.com/blog/product-news"><span>All Products</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42257"><a href="https://www.atlassian.com/blog/add-ons"><span>Apps</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42709"><a href="https://www.atlassian.com/blog/access"><span>Atlassian Guard</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42258"><a href="https://www.atlassian.com/blog/bamboo"><span>Bamboo</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42259"><a href="https://www.atlassian.com/blog/bitbucket"><span>Bitbucket</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42260"><a href="https://www.atlassian.com/blog/confluence"><span>Confluence</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42261"><a href="https://www.atlassian.com/blog/crowd"><span>Crowd</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42262"><a href="https://www.atlassian.com/blog/crucible"><span>Crucible</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42263"><a href="https://www.atlassian.com/blog/fisheye"><span>Fisheye</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-47068"><a href="https://www.atlassian.com/blog/halp"><span>Halp</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-62328"><a href="https://www.atlassian.com/blog/jira"><span>Jira</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-44717"><a href="https://www.atlassian.com/blog/jira-align"><span>Jira Align</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-47569"><a href="https://www.atlassian.com/blog/jira-service-management"><span>Jira Service Management</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42300"><a href="https://www.atlassian.com/blog/opsgenie"><span>Opsgenie</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42268"><a href="https://www.atlassian.com/blog/sourcetree"><span>Sourcetree</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42269"><a href="https://www.atlassian.com/blog/statuspage"><span>Statuspage</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-59774"><a href="https://www.atlassian.com/blog/trello"><span>Trello</span></a></li></ul></div></li><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children menu-item-42256"><a href="#"><span>Topics</span></a><div class='sub-menu__mobile'><ul><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-61663"><a href="https://www.atlassian.com/blog/artificial-intelligence"><span>AI</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42270"><a href="https://www.atlassian.com/blog/agile"><span>Agile</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42272"><a href="https://www.atlassian.com/blog/continuous-delivery"><span>Continuous Delivery</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category current-menu-item menu-item-61615"><a href="https://www.atlassian.com/blog/developer"><span>Developer</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42273"><a href="https://www.atlassian.com/blog/devops"><span>DevOps</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42274"><a href="https://www.atlassian.com/blog/enterprise"><span>Enterprise</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42275"><a href="https://www.atlassian.com/blog/git"><span>Git</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42277"><a href="https://www.atlassian.com/blog/it-service-management"><span>IT Service Management</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42276"><a href="https://www.atlassian.com/blog/inside-atlassian"><span>Inside Atlassian</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-59775"><a href="https://www.atlassian.com/blog/project-management"><span>Project Management</span></a></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-62329"><a href="https://www.atlassian.com/blog/work-management"><span>Work Management</span></a></li></ul></div></li><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-42271"><a href="https://www.atlassian.com/blog/announcements"><span>Company News</span></a></li><li class="product-news menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-42478"><a href="https://www.atlassian.com/blog/"><span>Blog</span></a></li></ul></div> </nav> </header> <div id="content" class="site-content"> <div id="primary" class="content-area"> <main id="main" class="site-main product-news-main" role="main"> <div class="container"> <div class="row"> <div class="col-12 col-lg-12 order-lg-12 product-news__interior-content"> <div class="product-news-header product-news__category"> <span class="product-news-header__intro tag-label">Developer blog: stories for app builders</span> <h1 class="h3 title-hidden">Developer</h1> </div> <section class="card-780"> <div class="row"> <div class="col-md-12"> <div class="card-image" > <a data-event-container="postCardThumbnail" data-event-component="image" data-label="Post Thumbnail" data-uuid="b2297c9e136010fcab1cbb9c3502669d" data-event="clicked" data-schema-version="1" aria-label="Partner Preview: App editions are coming to Marketplace" href="https://www.atlassian.com/blog/it-teams/partner-preview-app-editions-are-coming-to-marketplace" > <img width="1120" height="545" src="https://atlassianblog.wpengine.com/wp-content/uploads/2022/04/csd-14923-1120x545-1.png" class="card-img-top wp-post-image" alt="" decoding="async" fetchpriority="high" srcset="https://atlassianblog.wpengine.com/wp-content/uploads/2022/04/csd-14923-1120x545-1.png 1120w, https://atlassianblog.wpengine.com/wp-content/uploads/2022/04/csd-14923-1120x545-1-300x146.png 300w, https://atlassianblog.wpengine.com/wp-content/uploads/2022/04/csd-14923-1120x545-1-600x292.png 600w, https://atlassianblog.wpengine.com/wp-content/uploads/2022/04/csd-14923-1120x545-1-768x374.png 768w" sizes="(max-width: 1120px) 100vw, 1120px" /> </a> </div> </div> </div> </section> <div class="row"> <div class="col-md-8"> <div class="wp-block-atlassian-subscribe post-subscribe-widget undefined sidebar"><span class="subscribe-label">Subscribe to our newsletter</span><div class="subscribe-widget-body"><div class="oversize"><p class="atlassian-subscribe--body">Stay up to date on the latest developer news &amp; trends</p></div></div><button class="atlassian-subscribe--button_text button button__secondary--blue undefined" data-color="secondary--blue" data-toggle="modal" data-target="#atlassian-modal" data-consenthub-key="developerEcosystemNewsletter" data-form-label="" data-form-description="" data-consenthub-msg="">Subscribe</button></div> <section class="card-780 card category-card"> <div class="card-content"> <div class="card-left"> <div class="card-meta"> <div class="entry-category"> <span class="post-category "> <a href="https://www.atlassian.com/blog/it-teams" data-event-container="postCategory" data-event-component="link" data-label="IT" data-uuid="11868" data-event="clicked" data-schema-version="1">IT</a> </span> </div> <div class="card-title"> <h3 class="entry-title card-title "> <a data-event-container="postTitle" data-event-component="link" data-label="Partner Preview: App editions are coming to Marketplace" data-uuid="2106b3c1ce73afdd3098e553a2e5b372" data-event="clicked" data-schema-version="1" href="https://www.atlassian.com/blog/it-teams/partner-preview-app-editions-are-coming-to-marketplace" rel="bookmark" > Partner Preview: App editions are coming to Marketplace </a> </h3> </div> </div> </div> <div class="card-right"> <div class="card-body"> <p>We&#8217;re excited to officially launch App Editions for Marketplace! We know Marketplace Partners employ a variety of business strategies to...</p> </div> </div> </div> </section> </div> </div> <div class="row"> <div class="col-sm-8"> <section class="card-780x118 card"> <div class="row"> <div class="col-sm-12"> <div class="card-content"> <div class="card-left"> <div class="card-image" > <a data-event-container="postCardThumbnail" data-event-component="image" data-label="Post Thumbnail" data-uuid="feabf53dad014d4674474a0d054d0021" data-event="clicked" data-schema-version="1" aria-label="Runs on Atlassian Gives Partners a New Way to Showcase Strict Data Protections" href="https://www.atlassian.com/blog/developer/runs-on-atlassian-gives-partners-a-new-way-to-showcase-strict-data-protections" > <img width="192" height="192" src="https://atlassianblog.wpengine.com/wp-content/uploads/2024/11/csd-13570-blog-1120x545_2x-192x192.png" class="card-img-top wp-post-image" alt="" decoding="async" srcset="https://atlassianblog.wpengine.com/wp-content/uploads/2024/11/csd-13570-blog-1120x545_2x-192x192.png 192w, https://atlassianblog.wpengine.com/wp-content/uploads/2024/11/csd-13570-blog-1120x545_2x-400x400.png 400w, https://atlassianblog.wpengine.com/wp-content/uploads/2024/11/csd-13570-blog-1120x545_2x-760x760.png 760w" sizes="(max-width: 192px) 100vw, 192px" /> </a> </div> <div class="card-meta"> <div class="entry-category"> <span class="post-category "> <a href="https://www.atlassian.com/blog/developer" data-event-container="postCategory" data-event-component="link" data-label="Developer" data-uuid="13071" data-event="clicked" data-schema-version="1">Developer</a> </span> </div> <div class="card-title"> <h2 class="entry-title card-title h4"> <a data-event-container="postTitle" data-event-component="link" data-label="Runs on Atlassian Gives Partners a New Way to Showcase Strict Data Protections" data-uuid="619396035fc5eafcd2590ad4d8cf5226" data-event="clicked" data-schema-version="1" href="https://www.atlassian.com/blog/developer/runs-on-atlassian-gives-partners-a-new-way-to-showcase-strict-data-protections" rel="bookmark" > Runs on Atlassian Gives Partners a New Way to Showcase Strict Data Protections </a> </h2> </div> </div> </div> <div class="card-right"> <div class="card-body"> <p>Forge launched in 2021 with a watershed new capability: the option to host and run cloud apps entirely on Atlassian...</p> </div> </div> </div> </div> </div> </section> <section class="card-780x118 card"> <div class="row"> <div class="col-sm-12"> <div class="card-content"> <div class="card-left"> <div class="card-meta"> <div class="entry-category"> <span class="post-category "> <a href="https://www.atlassian.com/blog/developer" data-event-container="postCategory" data-event-component="link" data-label="Developer" data-uuid="13071" data-event="clicked" data-schema-version="1">Developer</a> </span> </div> <div class="card-title"> <h2 class="entry-title card-title h3"> <a data-event-container="postTitle" data-event-component="link" data-label="Connect apps will gain new extensibility features through Forge" data-uuid="f6dbdb86c7e76495916145eeb02af148" data-event="clicked" data-schema-version="1" href="https://www.atlassian.com/blog/developer/connect-forge-ga" rel="bookmark" > Connect apps will gain new extensibility features through Forge </a> </h2> </div> </div> </div> <div class="card-right"> <div class="card-body"> <p>Each new extensibility feature is an opportunity for partners to build innovative apps that solve previously unsolvable use cases for...</p> </div> </div> </div> </div> </div> </section> <section class="card-780x118 card"> <div class="row"> <div class="col-sm-12"> <div class="card-content"> <div class="card-left"> <div class="card-image" > <a data-event-container="postCardThumbnail" data-event-component="image" data-label="Post Thumbnail" data-uuid="89976382d26e5ea85cd03b8785321d6c" data-event="clicked" data-schema-version="1" aria-label="From idea to impact: learn from last year&#8217;s Codegeist winners" href="https://www.atlassian.com/blog/developer/codegeist-2024-inspo" > <img width="192" height="192" src="https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12774_fy25codegeist_email_opt2_1160x620-2x-192x192.jpg" class="card-img-top wp-post-image" alt="" decoding="async" srcset="https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12774_fy25codegeist_email_opt2_1160x620-2x-192x192.jpg 192w, https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12774_fy25codegeist_email_opt2_1160x620-2x-400x400.jpg 400w, https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12774_fy25codegeist_email_opt2_1160x620-2x-760x760.jpg 760w" sizes="(max-width: 192px) 100vw, 192px" /> </a> </div> <div class="card-meta"> <div class="entry-category"> <span class="post-category "> <a href="https://www.atlassian.com/blog/developer" data-event-container="postCategory" data-event-component="link" data-label="Developer" data-uuid="13071" data-event="clicked" data-schema-version="1">Developer</a> </span> </div> <div class="card-title"> <h2 class="entry-title card-title h4"> <a data-event-container="postTitle" data-event-component="link" data-label="From idea to impact: learn from last year&#8217;s Codegeist winners" data-uuid="5dc9f6f2ac842456b496180809b12646" data-event="clicked" data-schema-version="1" href="https://www.atlassian.com/blog/developer/codegeist-2024-inspo" rel="bookmark" > From idea to impact: learn from last year&#8217;s Codegeist winners </a> </h2> </div> </div> </div> <div class="card-right"> <div class="card-body"> <p>Discover how past Codegeist winners turned their ideas into impactful solutions and gain valuable lessons that will take your project to the next level </p> </div> </div> </div> </div> </div> </section> <section class="card-780x118 card"> <div class="row"> <div class="col-sm-12"> <div class="card-content"> <div class="card-left"> <div class="card-image" > <a data-event-container="postCardThumbnail" data-event-component="image" data-label="Post Thumbnail" data-uuid="fb3e7fcf597d69e188691fd0f4cc468b" data-event="clicked" data-schema-version="1" aria-label="Rovo for GitHub Copilot leads Atlassian鈥檚 new developer focused innovations at GitHub Universe" href="https://www.atlassian.com/blog/developer/atlassian-developer-innovation-rovo-for-github-copilot" > <img width="192" height="192" src="https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/image-20241018-032351-192x192.png" class="card-img-top wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/image-20241018-032351-192x192.png 192w, https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/image-20241018-032351-400x400.png 400w" sizes="(max-width: 192px) 100vw, 192px" /> </a> </div> <div class="card-meta"> <div class="entry-category"> <span class="post-category "> <a href="https://www.atlassian.com/blog/developer" data-event-container="postCategory" data-event-component="link" data-label="Developer" data-uuid="13071" data-event="clicked" data-schema-version="1">Developer</a> </span> </div> <div class="card-title"> <h2 class="entry-title card-title h4"> <a data-event-container="postTitle" data-event-component="link" data-label="Rovo for GitHub Copilot leads Atlassian鈥檚 new developer focused innovations at GitHub Universe" data-uuid="9a74f41231d6d7e5d8a0cd946039bf44" data-event="clicked" data-schema-version="1" href="https://www.atlassian.com/blog/developer/atlassian-developer-innovation-rovo-for-github-copilot" rel="bookmark" > Rovo for GitHub Copilot leads Atlassian鈥檚 new developer focused innovations at GitHub Universe </a> </h2> </div> </div> </div> <div class="card-right"> <div class="card-body"> <p>Bringing context to code and keeping devs in the flow with Atlassian and GitHub When I鈥檓 deep in focus time...</p> </div> </div> </div> </div> </div> </section> <section class="card-780x118 card"> <div class="row"> <div class="col-sm-12"> <div class="card-content"> <div class="card-left"> <div class="card-image" > <a data-event-container="postCardThumbnail" data-event-component="image" data-label="Post Thumbnail" data-uuid="a716f5e1fe407af07ff82ef5eb698ef4" data-event="clicked" data-schema-version="1" aria-label="Codegeist is back!" href="https://www.atlassian.com/blog/developer/codegeist-2024" > <img width="192" height="192" src="https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12775_fy25codegeist_blog_4_1120x545-2x-1-192x192.jpg" class="card-img-top wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12775_fy25codegeist_blog_4_1120x545-2x-1-192x192.jpg 192w, https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12775_fy25codegeist_blog_4_1120x545-2x-1-400x400.jpg 400w, https://atlassianblog.wpengine.com/wp-content/uploads/2024/10/csd-12775_fy25codegeist_blog_4_1120x545-2x-1-760x760.jpg 760w" sizes="(max-width: 192px) 100vw, 192px" /> </a> </div> <div class="card-meta"> <div class="entry-category"> <span class="post-category "> <a href="https://www.atlassian.com/blog/developer" data-event-container="postCategory" data-event-component="link" data-label="Developer" data-uuid="13071" data-event="clicked" data-schema-version="1">Developer</a> </span> </div> <div class="card-title"> <h2 class="entry-title card-title h4"> <a data-event-container="postTitle" data-event-component="link" data-label="Codegeist is back!" data-uuid="0aee5d40152674198ecf74215c4c9f80" data-event="clicked" data-schema-version="1" href="https://www.atlassian.com/blog/developer/codegeist-2024" rel="bookmark" > Codegeist is back! </a> </h2> </div> </div> </div> <div class="card-right"> <div class="card-body"> <p>Create game-changing apps for Jira, Confluence, and Bitbucket while competing for your share of $170K in cash prizes.</p> </div> </div> </div> </div> </div> </section> </div> </div> <div class="d-flex justify-content-center"> <div class="pagination-wrapper current-page-1"> <span class="read-more"> <a href="https://www.atlassian.com/blog/developer/page/2" data-event-container="nextPostsLink" data-event-component="link" data-label="Read more" data-uuid="a0205f5dd84e912284d13674c20af998" data-event="clicked" data-schema-version="1">Read more <span class="sr-only">on page 2</span></a> </span> </div><!-- .pagination --> </div> </div> </div> </div> </main><!-- #main --> </div><!-- #primary --> </div><!-- #content --> <div class="container"> <footer class="footer-product-news"> <div class="row"> <div class="site-footer__left"> <div class="site-footer__branding"> <a href="https://atlassian.com" class="footer-logo-link blue"data-event-container="productNewsFooter"data-event-component="link"data-label="Atlassian Logo"data-uuid="bb164d0eead9f030bbf01906556f16d5"data-event="clicked"data-schema-version="1" ><span class="screen-reader-text">Atlassian</span></a> </div> </div> <div class="site-footer__right"> <div class="menu-links-container"><ul id="footer-menu" class="nav navbar-nav"><li id="menu-item-35191" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-35191"><a href="https://atlassian.com" data-event-container="links" data-event-component="link" data-label="Atlassian.com" data-uuid="9267967357866cc662353f695a812366" data-event="clicked" data-schema-version="1">Atlassian.com</a></li> <li id="menu-item-35192" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-35192"><a href="https://www.atlassian.com/legal/customer-agreement" data-event-container="links" data-event-component="link" data-label="Terms of Use" data-uuid="3b85d684d1802dbf1bb05742c75f106f" data-event="clicked" data-schema-version="1">Terms of Use</a></li> <li id="menu-item-35193" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-35193"><a href="https://www.atlassian.com/legal/privacy-policy" data-event-container="links" data-event-component="link" data-label="Privacy Policy" data-uuid="8e1da51d53ab1992ceebd4f81ac8de1b" data-event="clicked" data-schema-version="1">Privacy Policy</a></li> <li id="menu-item-54122" class="atl-policy-link atl-policy-link-text atl-policy-link-container menu-item menu-item-type-custom menu-item-object-custom menu-item-54122"><a href="https://www.atlassian.com/legal/privacy-policy#additional-disclosures-for-ca-residents" data-event-container="links" data-event-component="link" data-label="Notice at Collection" data-uuid="e9dd1c49cc0ac866f54eb500eb0c6a52" data-event="clicked" data-schema-version="1">Notice at Collection</a></li> </ul></div> </div> </div> </footer> </div> </div><!-- #page --> <div class="modal fade" id="atlassian-modal"> <div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="Close" data-event-container="modal" data-event-component="button" data-label="Close Modal" data-uuid="5b8f923808787e8951dfce7a535aec13" > <span aria-hidden="true"><i class="icon-close"></i></span> </button> </div> <div class="modal-body"> <div id="consenthub-form-wrapper"> <div class="card-body text-center"> <form method="post" enctype="multipart/form-data" id="consenthub-form"> <input type="hidden" name="action" value="atlassian_blog_process_consenthub" /> <header class="form-heading"> <span class="subscribe-label">Subscribe to Dev News</span> <h3 class="form-description">Stories, trends &amp; announcements for Atlassian builders</h3> </header> <div id="consenthub_error_msg"></div> <div class="form-body"> <label class="sr-only" for="consenthub_email" >Email<span class="gfield_required">*</span></label> <div class="form-input-container form-input-container-email"> <input name="consenthub_email" id="consenthub_email" type="text" value="" class="large" tabindex="5" placeholder="Email Address" aria-required="true" aria-invalid="false" /> </div> </div> <div class="form-footer"> <input type="hidden" id="consenthub_key" value="atlassian.atlassianBlog" /> <input type="hidden" id="consenthub_success_msg" value="We know your inbox is protected space, so we promise to send only the good stuff, twice a month." /> <input type="submit" id="consenthub_form_submit" class="button button__primary--yellow" value="Subscribe" tabindex="6" /> </div> </form> </div> </div> </div> </div> </div> </div> <script type="text/javascript" id="code-prettify-js-before"> /* <![CDATA[ */ var codePrettifyLoaderBaseUrl = "https:\/\/atlassianblog.wpengine.com\/wp-content\/plugins\/code-prettify\/prettify"; /* ]]> */ </script> <script type="text/javascript" src="https://atlassianblog.wpengine.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" id="atlassian-components-script-js-extra"> /* <![CDATA[ */ var consenthub_settings = {"ajaxurl":"https:\/\/atlassianblog.wpengine.com\/wp-admin\/admin-ajax.php","error_msg":"Please enter a valid email address","fail_msg":"An error occurred when submitting your information. Please try again later.","configurl":"https:\/\/preferences.atlassian.com\/rest\/forms\/config","formurl":"https:\/\/www.atlassian.com\/blog\/developer","submiturl":"https:\/\/www.atlassian.com\/endpoint\/preferencesV2\/update"}; /* ]]> */ </script> <script type="text/javascript" id="atlassianblogs-script-js-extra"> /* <![CDATA[ */ var atlassian_banner_cookie = [""]; var search_url_base = {"url":"https:\/\/www.atlassian.com\/blog\/search"}; var current = {"url":"https:\/\/www.atlassian.com\/blog\/developer\/runs-on-atlassian-gives-partners-a-new-way-to-showcase-strict-data-protections"}; var home_url_base = {"url":"https:\/\/atlassianblog.wpengine.com\/"}; /* ]]> */ </script> <script type="text/javascript" src="https://atl-global.atlassian.com/js/atl-global.min.js?ver=1.0" id="segment-io-script-js"></script> <script type="text/javascript" src="https://stats.wp.com/e-202448.js" id="jetpack-stats-js" data-wp-strategy="defer"></script> <script type="text/javascript" id="jetpack-stats-js-after"> /* <![CDATA[ */ _stq = window._stq || []; _stq.push([ "view", JSON.parse("{\"v\":\"ext\",\"blog\":\"231319216\",\"post\":\"0\",\"tz\":\"-8\",\"srv\":\"atlassianblog.wpengine.com\",\"j\":\"1:13.9\"}") ]); _stq.push([ "clickTrackerInit", "231319216", "0" ]); /* ]]> */ </script> <script> ace.analytics.Initializer.initWithPageAnalytics('kiv6wyh2nw'); </script> <script defer src="https://atlassianblog.wpengine.com/wp-content/cache/autoptimize/js/autoptimize_a75f3b351f681202df00e3b4a0b55090.js"></script></body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10