Site logo Cogitations

Enhancing Productivity In The AI Era A Guide For Teams Of All Levels

Created March 31, 2026·Updated May 21, 2026·5,745 characters·5 min read

I believe that building a diverse team spanning junior to senior levels is a critical factor in driving a company’s productivity. Successful companies will not eliminate junior positions; rather, they will structure them differently and focus on developing a range of vital skills in their developers.

This post is also published on medium.com

For context, my first job in the software industry was in 1977. Yes, that’s right, I’ve been around for a while. Over the years, I’ve founded multiple startups, employed hundreds of people, and navigated countless technology transitions. Even though I spent many of these years as a CEO, each startup began with my hands-on involvement, including putting together a proof of concept, writing code, and designing architecture.

Now, even in retirement from my executive role in software, coding remains a passionate pastime for me. AI has emerged as a significant game-changer in my process. I’ve incorporated AI tools into my workflow as valuable new team members. In fact, you will learn that I communicate with them much as I did with mid-level developers in the past. They’ve increased my productivity by at least five to six times, possibly even more.

Let’s take a simple example. I’m a fan of the Joplin note-taking system and use it on a desktop Mac, a Microsoft Surface ARM laptop, and an iPhone. I use the paid Joplin Cloud service to sync all my notes.

ChatGPT has become an indispensable research tool. As a result, I found myself frequently switching between ChatGPT and Joplin, copy-pasting text multiple times a day. Although there are a few AI plugins for Joplin, none quite met my needs, so I built my own.

My first programming language was Fortran, and over the years I’ve used at least half a dozen languages. Despite being relatively new to TypeScript, with the help of Cursor.ai and ChatGPT-5, I managed to create a working plugin that met my needs in about 4 hours. I treated the AI like a mid-level developer, providing instructions at a level of detail similar to what I would give a human developer. As with a regular code review, if the AI seemed off track, I simply suggested a new line of thinking.

By leveraging GitHub and frequent commits, I created a safeguard against AI errors. If necessary, I could easily revert to an earlier commit and modify my instructions or prompts to steer the AI in a different direction. This iterative process mirrors my experience managing development teams — guiding them through roadblocks and helping them move to the next step.

Sure, I didn’t spend a lot of time poring over the code, but there are tools to help with that. After getting a working version of the plugin, I switched my AI to Claude and asked it to review the code, treating each AI as just another team member. Next, I switched back to GPT-5 and asked it to write and run unit tests. When those passed, I switched back to Claude and asked it to review the unit tests. Finally, I used Claude to check my code for potential security issues.

Without AI assistance, the process would likely have taken me a week or more, manually typing all the code, searching for coding examples, and grappling with unfamiliar TypeScript syntax.

Now, I realize this works for me because I have close to 50 years of experience. But how do we expect a junior developer to do this if we train them the same old way? We can’t. We need a different approach in which learning syntax is not the be-all and end-all. Instead, the focus should be on equipping them with analytical skills, honing their ability to craft effective prompts for AI, and understanding the various stages of development. In essence, we should teach them to do what I did.

I do not think developers necessarily need to grasp the intricate technical distinctions between, say, a binary and a sieve-style sort. Instead, their strength should lie in asking the right questions and providing clear, detailed prompts when interacting with AI. For example, given ‘x’ volume of data and that JavaScript is running in the browser, they should ask:

  • “What’s the most efficient way to sort the data?”
  • “Should we be using a standard Javascript module or implementing our own custom sorting function?”
  • “Can you create a checkpoint mechanism to ensure we do not run out of memory during the operation?”
  • “What’s your suggested approach for testing the sorting component for correctness and performance?”
  • “Could you devise a mechanism to integrate timing logs into the code to provide real-time performance insights?”
  • “What edge cases should we consider during implementation?”
  • “Can you generate a fallback strategy in case the primary sorting method fails?”

Through thoughtful, detailed prompts like these, developers can leverage AI effectively to design robust, efficient sorting implementations for their JavaScript applications.

Just as COBOL, PL/I, Fortran, and MVS were fundamental tools when I was getting started, today’s technology landscape is dominated by AI, specifically large language models. These AI tools present an unparalleled opportunity to maximize productivity across all levels of a team. It’s crucial to understand that maintaining a balanced cost structure requires an appropriate mix of team members — ranging from junior to senior. Therefore, regardless of their seniority, every team member must embrace and use these tools efficiently. It’s not merely an option but a necessity in today’s tech-dominated era.

Plugin GitHub Repo

P.S. To address the inevitable question — yes, I used AI to refine and clarify this post. I wrote it in my Joplin notebook and used the ChatGPT plugin mentioned above to assist with editing.