{"id":2393,"date":"2023-08-04T10:33:29","date_gmt":"2023-08-04T10:33:29","guid":{"rendered":"https:\/\/www.infobip.com\/developers\/?p=2393"},"modified":"2023-09-11T14:27:49","modified_gmt":"2023-09-11T14:27:49","slug":"7-principles-and-10-tactics-to-make-you-a-10x-developer","status":"publish","type":"post","link":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer","title":{"rendered":"7 principles and 10 tactics to make you a 10x developer"},"content":{"rendered":"\n<p>We&#8217;ve all heard about 10x engineers. Whether real or mythical<strong>, 10x engineers are supposedly 10 times more productive than their regular peers.<\/strong> The internet is full of advice on how to become a 10x engineer and most of them include tips for individuals on how to improve their expertise or mindset.<br>\u00a0<br><strong>Brandon Bayer<\/strong> from <a href=\"https:\/\/www.flightcontrol.dev\/\">Fligtcontrol<\/a> offered a somewhat different perspective at the <a href=\"https:\/\/shift.infobip.com\/us\/\">Shift conference in Miami<\/a> in his talk on 10 ways to improve how you ship software. His thesis is that you can become a 10x developer by making 10 other people 10 % more productive.\u00a0<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"10 Ways to Improve How You Ship Software - Brandon Bayer (Flightcontrol)\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/elJt7nTeskU?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Bayer shared 7 general principles and 10 tactics on how to achieve that.<br><br>The principles are:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Principle 1: Speed<\/strong><\/h2>\n\n\n\n<p>Developers are speed junkies. If they find a tool that\u2019s 10ms faster, they would almost want to rewrite the entire application in it. But when it comes to how often they deploy code, they tend to be much more cautious. They would always rather deploy tomorrow, or next week\u2026so they don\u2019t have to stay late today to fix whatever problems might happen.<br>When it comes to deploys, speed is safety and small is speed.<\/p>\n\n\n\n<p>Speed of shipping has massive compounding effects. If your deploy takes hours, you\u2019re going to want to make dang sure there\u2019s no bugs, because if you find a critical bug right after a deploy goes live, then you have wait another couple of hours for your fix to go live.<br>Aim for speed in every part of the software lifecycle:<br>&nbsp;\u2022 &nbsp;Fast feedback loops<br>\u2022 Fast builds<br>\u2022 Fast tests<br>\u2022 Fast deploys<br>\u2022 Fast fixes<br>\u2022 Fast rollbacks<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Principle 2: Reliability<\/strong><\/h2>\n\n\n\n<p>Your systems must be dependable. Flaky CI\/CD issues are one of the worst possible things in the universe. Avoid flakiness at all costs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Principle 3: Reproducibility<\/strong><\/h2>\n\n\n\n<p>In order to build and maintain complex systems, we need to know that if we do X, we get Y, every time. If one time you do X, you get a Y, but then another time you get Z, you will lose all confidence in your systems.<\/p>\n\n\n\n<p>Use scripts &amp; code to control everything you do instead of manual clicking, manual commands, etc.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Principle 4: &nbsp;Calm On-Call Rotations<\/strong><\/h2>\n\n\n\n<p>Calm on-call rotations are important because people can usually put up with stress during the workday, but if creeps up in the rest of their life\u2026that&#8217;s when they start updating thei resumes!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Principle 5: Easy to debug<\/strong><\/h2>\n\n\n\n<p>Everyone causes bugs. Even seniors, even when there is 100% test coverage. You will ship bugs to production, so you must be prepared to fix production bugs. If it\u2019s hard to debug and slow to deploy fixes, it\u2019s going to slow you down because you are going to add lengthy QA processes and before you know it, you\u2019ll be deploying code only once every few weeks.<\/p>\n\n\n\n<p>But even with lots of QA, you\u2019ll still have production bugs. Production is the only tried and true way to find all the bugs. So our systems must be easy to debug.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Principle 6: Self-serve infrastructure &amp; deployments<\/strong><\/h2>\n\n\n\n<p>The old way of doing infrastructure and code deployments was you had two separate teams, &nbsp;Devs and Ops. If devs needed a new database, they would fill a ticket with Ops.<br>If they needed a new service, file a ticket with Ops.<br>Need to deploy your code? File a ticket with ops<\/p>\n\n\n\n<p>This way led to devs often being blocked and waiting on ops to get to some ticket, devs not monitoring infra stuff, and not getting feedback if their code was fast or slow, efficient or inefficient.<\/p>\n\n\n\n<p>As an industry, we figured out it\u2019s much better for devs to deploy and run their own code.<\/p>\n\n\n\n<p>This is more efficient, they get stuck less, there is less communication overhead, and devs get more feedback from the real world on how their code is performing.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Principle 7: Ship on Fridays<\/strong><\/h2>\n\n\n\n<p>Healthy engineering organizations deploy multiple times per day, including on Fridays!<\/p>\n\n\n\n<p>If you are afraid to deploy on Fridays, it\u2019s likely because:<br>&nbsp;\u2022 You don\u2019t have reliable deploys<\/p>\n\n\n\n<p>\u2022 You have slow deploys<\/p>\n\n\n\n<p>\u2022 You don\u2019t have good monitoring and alerting<\/p>\n\n\n\n<p>\u2022&nbsp; Your app is hard to debug<\/p>\n\n\n\n<p>\u2022&nbsp; You don\u2019t have tests<\/p>\n\n\n\n<p>Those are all things you must fix.<\/p>\n\n\n\n<p><strong>Brandon then shared 10 practical tactics to use to become a 10x developer:<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>1. Decouple deploys from releases<\/strong><\/h2>\n\n\n\n<p>Fundamentally there are two possible actions for changing code in production: Deploys and Releases. Releasing refers to the process of changing user experience in a meaningful way. Deploying refers to the process of building, testing, and rolling out changes to production software. The traditional process is that you change the code on a branch, and when it\u2019s ready, you merge and deploy it. Once it\u2019s deployed, users will see the new code.<br><br>But today\u2019s modern engineering organizations use feature flags. What is a feature flag?<br>It allows you to write new code alongside the old code, and then based on a runtime feature flag your app decides to run the old or new code. This is HUGE.<br><br>Remember, speed is one of the key principles! Separating deploys from releases speeds up both. Because engineers can deploy their code as soon as it\u2019s ready without waiting on product management to be ready to release it.<\/p>\n\n\n\n<p>It also speeds up releases, because now you can release a feature instantly. And rollback a feature instantly, without needing a deploy. Product managers can do releases on their own schedule.<br>&nbsp;<br>Then even more advanced things are possible, like progressive rollouts, where you enable the feature flag for a percentage of your users. So, you could start out with 5 % and if everything is working, then increase to 10 %, 20%, etc. This is the best way to roll out changes because if there are problems, only a subset of your users will experience them, instead of all of them.<br>&nbsp;<br>Feature flags are far superior to long-lived feature branches. You have less merge conflicts, less stale code, more team momentum, better team morale, and more flexibility for testing things with real users.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>2. Continuous deployment (CD)<\/strong><\/h2>\n\n\n\n<p>Deployments are the heartbeat of an engineering organization. And just like a human heart, you want a steady rhythm of simple heartbeats. With this steady rhythm of deployments, you get a momentum. And a momentum is life for organizations.<\/p>\n\n\n\n<p>And along with momentum, you get efficiency of being able to deliver code to production as quickly as possible after it\u2019s written.<br><br>You want to deploy as often as possible, lmultiple times per day. Every commit should be deployed. Small, understandable changes mean you have debuggable and understandable deploys.<\/p>\n\n\n\n<p>The engineer who writes the code should merge their own PR and then monitor production for any unexpected issues Feature flags, are a prerequisite for this, because they allow your team to ship small changes continuously instead of having long-lived feature branches.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>3. Set up notifications<\/strong><\/h2>\n\n\n\n<p>Make sure you set up notifications for the following<br>\u2022 Failed builds<\/p>\n\n\n\n<p>\u2022 Failed deploys<\/p>\n\n\n\n<p>\u2022 Service downtime<\/p>\n\n\n\n<p>\u2022 Unhealthy servers<\/p>\n\n\n\n<p>\u2022 Unexpected errors<\/p>\n\n\n\n<p>\u2022 Unusual amount of traffic<\/p>\n\n\n\n<p>\u2022 Statuses of third-party services<\/p>\n\n\n\n<p>\u2043 Many have a status page that you can subscribe to in Slack<\/p>\n\n\n\n<p>The benefit is relatively obvious, but it does take at least a bit of effort to set them up, so this is something many teams can add as a quick win.<\/p>\n\n\n\n<p>And if you already have notifications &amp; alerts, you should audit them and ask these 3 questions:<br>&nbsp;\u2022 Are they useful?<\/p>\n\n\n\n<p>\u2022 &nbsp;Are you getting too many false alerts so that you ignore them?<\/p>\n\n\n\n<p>\u2022 &nbsp;Are there things you should add new alerts for?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>4. Optimize deploy speed<\/strong><\/h2>\n\n\n\n<p>Your target for a happy team is 15 minute deploys or less. Significantly longer than this is significantly painful. But significantly faster than this could take more work than it\u2019s worth, depending on your circumstances.<\/p>\n\n\n\n<p>There are several ways to improve your speed of deploys:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>a. Track and measure your current deploy times<\/strong><\/h3>\n\n\n\n<p>You want to understand your starting point, and which parts of the process are taking a long time. Those will be where you want to focus on improving<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>b. Speed up dependency installation<\/strong><\/h3>\n\n\n\n<p>This step is often one of the longest segments of a deploy, so it can be a good first step<\/p>\n\n\n\n<p>1. Switch to PNPM<\/p>\n\n\n\n<p>If using JavaScript, switch to pnpm which is a drop-in replacement for npm &amp; yarn that has significant performance &amp; caching improvements<\/p>\n\n\n\n<p>2. Cache the entire install step<\/p>\n\n\n\n<p>Use your build system to totally cache this step, so this step doesn\u2019t even run if your dependencies haven\u2019t changed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><br><strong>c. Improve your build speed<\/strong><\/h3>\n\n\n\n<p>The main way to do this is switch to a faster bundler.<\/p>\n\n\n\n<p>If you are using create-react-app which uses webpack, you can switch to Vite which is way faster.<\/p>\n\n\n\n<p>If using nextjs, upgrade to the latest and make sure you don\u2019t have a .babelrc file, this will use SWC instead of babel which is a lot faster<\/p>\n\n\n\n<p>If you like living on the edge you can use turbopack by passing the &#8211;turbo flag to next dev but it\u2019s only available for dev, not production builds yet<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>d. Set up build caching<\/strong><\/h3>\n\n\n\n<p>If you are using Docker, there are several things you can do.<\/p>\n\n\n\n<p>Optimize your build layers. Use multi-stage builds. Set up remote caching.<\/p>\n\n\n\n<p>Locally docker caches by default and is fast, but in CI you don&#8217;t have a permanent machine. So you have to set up caching yourself. Refer to the docker docs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>e. Caching from the future<\/strong><\/h3>\n\n\n\n<p>If you want to really live with your hair on fire, in a good or a bad way, there is another style of caching that can give you some big wins, if you have a javascript project. Caching from the future works by <strong>having a single shared cache between your entire team<\/strong> and also CI.<br>&nbsp;This means if you build a commit locally and then push that commit to CI, the CI build will just download the cached build that you made and be done in mere seconds.<\/p>\n\n\n\n<p>Or if someone else on your team already build a commit, and then you run the build locally, it will again download the cache and be done in mere seconds instead of building from scratch again for you.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>5. Replace staging with preview environments<\/strong><\/h2>\n\n\n\n<p>Preview environments are temporary environments, typically tied to the lifecycle of a pull request. When you open a pull request, infra can be automatically provisioned for that PR.<\/p>\n\n\n\n<p>This enables stakeholders to easily see the changes in a production-like environment. And then when the pull request is merged or closed, it\u2019s environment will be automatically cleaned up.<\/p>\n\n\n\n<p>They are a companion to feature flags. Larger changes should use feature flags and will often have many PRs for that feature. But small changes are often easier to re\u2010 view with a preview environment instead of going the hassle of managing a feature flag for it.<\/p>\n\n\n\n<p>Preview environments are usually a better replacement for long-lived staging environments because staging is running all the time whether it needs to or not. And you have to merge a PR before anyone can verify the change.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>6. Infrastructure-as-code<\/strong><\/h2>\n\n\n\n<p>Hopefully you already have automated deployments, but you might not have automated infrastructure. Without infrastructure-as-code, you typically define your infrastructure config by clicking through a dashboard.<\/p>\n\n\n\n<p>Bringing automation to your infra config in the form of infrastructure-as-code has a huge number of benefits<\/p>\n\n\n\n<p>\u2022 Repeatability \/ reproducibility<\/p>\n\n\n\n<p>\u2022 Consistency &amp; standardization \u2013 Predictability<\/p>\n\n\n\n<p>\u2022 Version controlled<\/p>\n\n\n\n<p>\u2022 Collaboration &amp; review<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>7. Platform Engineering<\/strong><\/h2>\n\n\n\n<p>&nbsp;Back in the very old days, you had to rack your own servers in a data center. The abstraction level of infrastructure was extremely low. Then came AWS which introduced cloud and raised the abstraction level. But it was still far too low for the average developer.<\/p>\n\n\n\n<p>This led to the creation of Heroku, to the glee of developers all around the world. But that excitement was not to last, because Ops were not happy. And it turns out ab\u2010stractions like Heroku do not scale for large companies.<\/p>\n\n\n\n<p>So Ops takes over and tries creates a new thing between AWS &amp; Heroku, infrastructure-as-code and Terraform. This works very well, but developers were not happy again.<\/p>\n\n\n\n<p>Additionally, company leadership wants to increase operational efficiency, and one way to do that is provide devs with self-serve infrastructure, and so we started creating internal platforms that provide a better developer experience. Through that, the industry found a way for both ops &amp; devs to be happy. And it has become known as platform engineering.<\/p>\n\n\n\n<p>Now many companies are building some type of internal platform, sometimes known as internal developer platform.<\/p>\n\n\n\n<p>This platform can look more like an internal Heroku or more like just Terraform.<br><br>The 3 key concepts are:<\/p>\n\n\n\n<p>1. Deploys to your own AWS\/GCP account<\/p>\n\n\n\n<p>2. Self-serve infra with good developer experience<\/p>\n\n\n\n<p>3. Ops can dictate and customize the underlying primitives<br><br>Three of the main tools are Backstage, Humanitec and Flightcontrol.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>8. Work as a TEAM<\/strong><\/h2>\n\n\n\n<p> Small team (2-6 people, 4 is ideal)<\/p>\n\n\n\n<p>\u2022 Entire team works on 1 project at a time, together<\/p>\n\n\n\n<p>\u2022 Kickoff meeting (deep discussions on how to build)<\/p>\n\n\n\n<p>\u2022 Break project into small tasks (usually in kickoff)<\/p>\n\n\n\n<p>\u2022 Work on subtasks in parallel<\/p>\n\n\n\n<p>\u2022 Small PRs, at least 1 per day<\/p>\n\n\n\n<p>\u2022 Quick reviews \/ don\u2019t be a blocker<\/p>\n\n\n\n<p>\u2022 Unblock yourself &#8211; merge your own safe PR if no one is available to review and you are blocked<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>9. Trunk based development<\/strong><\/h2>\n\n\n\n<p>Get rid of pull requests, commit straight to the main branch. It\u2019s called trunk based development.<\/p>\n\n\n\n<p>Think of it like a cafeteria. Your tray is the main branch. When burger is done, it goes on the tray. When fries are ready, on the tray. When milk shake is poured, tray. Once the tray is full, someone calls your number.<\/p>\n\n\n\n<p>That&#8217;s how trunk-based development works. Every feature goes straight to main when it&#8217;s ready. Subtask or entire project doesn&#8217;t matter because they&#8217;re all fully working, independent, and deployable.<\/p>\n\n\n\n<p>If committing straight to main is too radical for you, then do the next best thing which is short-lived branches. PRs shouldn\u2019t last more than a day maximum. For a project, you should have many short PRs that are quick for others to review and are easy to merge. That\u2019s how you get momentum.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>10. Eat healthy &amp; exercise<\/strong><\/h2>\n\n\n\n<p>We all need this reminder, being hunched over computers all day. Make sure you take care of yourself.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Brandon Bayer has a thesis that you can become a 10x developer &#8211; by making 10 other people 10 % more productive.\u00a0Here&#8217;s how.<\/p>\n","protected":false},"author":9,"featured_media":2402,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[28,254,248,246],"tags":[137,146,256],"coauthors":[158],"class_list":["post-2393","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog-post","category-engineering-practices","category-retrospective-infobip-events","category-retrospective","tag-career","tag-development","tag-programming"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>7 principles and 10 tactics to make you a 10x developer<\/title>\n<meta name=\"description\" content=\"Brandon Bayer has a thesis that you can become a 10x developer - by making 10 other people 10 % more productive.\u00a0Here&#039;s how.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"7 principles and 10 tactics to make you a 10x developer\" \/>\n<meta property=\"og:description\" content=\"Brandon Bayer has a thesis that you can become a 10x developer - by making 10 other people 10 % more productive.\u00a0Here&#039;s how.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer\" \/>\n<meta property=\"og:site_name\" content=\"Infobip Developers Hub\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/infobip\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-08-04T10:33:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-09-11T14:27:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1706\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Antonija Blic Arar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@InfobipDev\" \/>\n<meta name=\"twitter:site\" content=\"@InfobipDev\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Antonija Blic Arar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer\"},\"author\":{\"name\":\"Antonija Blic Arar\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/814cec14bb89cce9a4de95d2080a3f7e\"},\"headline\":\"7 principles and 10 tactics to make you a 10x developer\",\"datePublished\":\"2023-08-04T10:33:29+00:00\",\"dateModified\":\"2023-09-11T14:27:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer\"},\"wordCount\":2401,\"publisher\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg\",\"keywords\":[\"career\",\"development\",\"programming\"],\"articleSection\":[\"Blog Post\",\"Engineering Practices\",\"Infobip events\",\"Retrospective\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer\",\"url\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer\",\"name\":\"7 principles and 10 tactics to make you a 10x developer\",\"isPartOf\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg\",\"datePublished\":\"2023-08-04T10:33:29+00:00\",\"dateModified\":\"2023-09-11T14:27:49+00:00\",\"description\":\"Brandon Bayer has a thesis that you can become a 10x developer - by making 10 other people 10 % more productive.\u00a0Here's how.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage\",\"url\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg\",\"contentUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg\",\"width\":2560,\"height\":1706,\"caption\":\"MELBOURNE, AUSTRALIA - MARCH 26: An Royal Australian Air Force F\/A18F Super Hornet performs in a public display above Melbourne on March 26, 2017\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.infobip.com\/developers\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"7 principles and 10 tactics to make you a 10x developer\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#website\",\"url\":\"https:\/\/www.infobip.com\/developers\/\",\"name\":\"Infobip Developers Hub\",\"description\":\"Build meaningful customer relationships across any channel\",\"publisher\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.infobip.com\/developers\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#organization\",\"name\":\"Infobip Developers Hub\",\"url\":\"https:\/\/www.infobip.com\/developers\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png\",\"contentUrl\":\"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png\",\"width\":696,\"height\":696,\"caption\":\"Infobip Developers Hub\"},\"image\":{\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/infobip\/\",\"https:\/\/x.com\/InfobipDev\",\"https:\/\/www.youtube.com\/channel\/UCUPSTy53VecI5GIir3J3ZbQ\",\"https:\/\/github.com\/infobip-community\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/814cec14bb89cce9a4de95d2080a3f7e\",\"name\":\"Antonija Blic Arar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/image\/4b1cd96f9707209206f2e491edf455d7\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/aaea85438d87f78df75e9aba6b08ebfcf0b984f254efa430a8cd7270991e4891?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/aaea85438d87f78df75e9aba6b08ebfcf0b984f254efa430a8cd7270991e4891?s=96&d=mm&r=g\",\"caption\":\"Antonija Blic Arar\"},\"description\":\"Antonija is a journalist writing about development, startups and growth.\",\"url\":\"https:\/\/www.infobip.com\/developers\/blog\/author\/antonija\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"7 principles and 10 tactics to make you a 10x developer","description":"Brandon Bayer has a thesis that you can become a 10x developer - by making 10 other people 10 % more productive.\u00a0Here's how.","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:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer","og_locale":"en_US","og_type":"article","og_title":"7 principles and 10 tactics to make you a 10x developer","og_description":"Brandon Bayer has a thesis that you can become a 10x developer - by making 10 other people 10 % more productive.\u00a0Here's how.","og_url":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer","og_site_name":"Infobip Developers Hub","article_publisher":"https:\/\/www.facebook.com\/infobip\/","article_published_time":"2023-08-04T10:33:29+00:00","article_modified_time":"2023-09-11T14:27:49+00:00","og_image":[{"width":2560,"height":1706,"url":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg","type":"image\/jpeg"}],"author":"Antonija Blic Arar","twitter_card":"summary_large_image","twitter_creator":"@InfobipDev","twitter_site":"@InfobipDev","twitter_misc":{"Written by":"Antonija Blic Arar","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#article","isPartOf":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer"},"author":{"name":"Antonija Blic Arar","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/814cec14bb89cce9a4de95d2080a3f7e"},"headline":"7 principles and 10 tactics to make you a 10x developer","datePublished":"2023-08-04T10:33:29+00:00","dateModified":"2023-09-11T14:27:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer"},"wordCount":2401,"publisher":{"@id":"https:\/\/www.infobip.com\/developers\/#organization"},"image":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage"},"thumbnailUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg","keywords":["career","development","programming"],"articleSection":["Blog Post","Engineering Practices","Infobip events","Retrospective"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer","url":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer","name":"7 principles and 10 tactics to make you a 10x developer","isPartOf":{"@id":"https:\/\/www.infobip.com\/developers\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage"},"image":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage"},"thumbnailUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg","datePublished":"2023-08-04T10:33:29+00:00","dateModified":"2023-09-11T14:27:49+00:00","description":"Brandon Bayer has a thesis that you can become a 10x developer - by making 10 other people 10 % more productive.\u00a0Here's how.","breadcrumb":{"@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#primaryimage","url":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg","contentUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/08\/f-a18f-super-hornet-performing-maneuver-2021-08-26-17-04-32-utc-scaled.jpg","width":2560,"height":1706,"caption":"MELBOURNE, AUSTRALIA - MARCH 26: An Royal Australian Air Force F\/A18F Super Hornet performs in a public display above Melbourne on March 26, 2017"},{"@type":"BreadcrumbList","@id":"https:\/\/www.infobip.com\/developers\/blog\/7-principles-and-10-tactics-to-make-you-a-10x-developer#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.infobip.com\/developers\/"},{"@type":"ListItem","position":2,"name":"7 principles and 10 tactics to make you a 10x developer"}]},{"@type":"WebSite","@id":"https:\/\/www.infobip.com\/developers\/#website","url":"https:\/\/www.infobip.com\/developers\/","name":"Infobip Developers Hub","description":"Build meaningful customer relationships across any channel","publisher":{"@id":"https:\/\/www.infobip.com\/developers\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.infobip.com\/developers\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.infobip.com\/developers\/#organization","name":"Infobip Developers Hub","url":"https:\/\/www.infobip.com\/developers\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/","url":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png","contentUrl":"https:\/\/www.infobip.com\/developers\/wp-content\/uploads\/2023\/03\/Infobip_logo_favicon.png","width":696,"height":696,"caption":"Infobip Developers Hub"},"image":{"@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/infobip\/","https:\/\/x.com\/InfobipDev","https:\/\/www.youtube.com\/channel\/UCUPSTy53VecI5GIir3J3ZbQ","https:\/\/github.com\/infobip-community"]},{"@type":"Person","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/814cec14bb89cce9a4de95d2080a3f7e","name":"Antonija Blic Arar","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.infobip.com\/developers\/#\/schema\/person\/image\/4b1cd96f9707209206f2e491edf455d7","url":"https:\/\/secure.gravatar.com\/avatar\/aaea85438d87f78df75e9aba6b08ebfcf0b984f254efa430a8cd7270991e4891?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/aaea85438d87f78df75e9aba6b08ebfcf0b984f254efa430a8cd7270991e4891?s=96&d=mm&r=g","caption":"Antonija Blic Arar"},"description":"Antonija is a journalist writing about development, startups and growth.","url":"https:\/\/www.infobip.com\/developers\/blog\/author\/antonija"}]}},"_links":{"self":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts\/2393","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/comments?post=2393"}],"version-history":[{"count":7,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts\/2393\/revisions"}],"predecessor-version":[{"id":2484,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/posts\/2393\/revisions\/2484"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/media\/2402"}],"wp:attachment":[{"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/media?parent=2393"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/categories?post=2393"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/tags?post=2393"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.infobip.com\/developers\/wp-json\/wp\/v2\/coauthors?post=2393"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}