DEV Community

Lorenzo Zarantonello
Lorenzo Zarantonello

Posted on • Originally published at Medium

Three Examples of How AI Expands Developers' Roles

Here are three tools to expand developers' roles and productivity. You can start to use them right now.

  • GitHub Copilot - Generic Developer Assistant
  • JIRA AI - Developers Expand Into Product Owners
  • EarlyAI - Your AI Test Engineer

GitHub Copilot - Generic Developer Assistant

GitHub Copilot

By now, every developer should know Copilot. So, I won't spend too many words about it.
It's a generic coding assistant that can support your development activities.
It's not perfect but here are a few use cases I like:

  1. Quick questions without leaving my IDE
  2. Create mock data to display something 

JIRA AI expands developers' roles into Product Owners

Now, JIRA doesn't really shine among developers. JIRA is a Frankenstein project management tool developed by Atlassian to "do a lot of things".

Sometimes, I feel that JIRA gets undeserved criticism because the problems come from the inability to master and use the tool efficiently rather than from its flaws. 

Atlassian, the company behind JIRA, hopped on the GenAI train enabling AI editing across Atlassian products.

Atlassian AI

Now this might seem like prompt engineering. But I was positively surprised when with this flow:

  1. Write a good technical prompt describing the problem 
  2. JIRA AI broke down the problem into smaller actionable sub-tasks 
  3. Each sub-task was correctly assigned to a newly created ticket

In such a workflow, technical knowledge is very relevant, and that knowledge is too often missing in non-technical POs.

EarlyAI by Early provides an AI test engineer to every developer

Having an AI test engineer by your side has never been easier. 
If Copilot is a generic coding assistant, EarlyAI is super focused on unit tests and closer to becoming an AI agent for the specific task of high-quality unit test generation. 

EarlyAI creates entire test suites in one click.

EarlyAI writes unit tests in one click

Honestly, I find the phrasing "30 green unit tests in less than a minute" an understatement. At the moment, I am migrating a Next.js project from using Pages Router to App Router. 

Since it was supposed to be "just a side project" I didn't write tests.

Now, the project has grown quite a bit, and touching code and libraries without proper testing is guaranteed to cause some issues down the line. 
In this case, I am using EarlyAI to cover my blind spots while migrating the project.

Here is an example of the generated test suite EarlyAI created.

// addDocument.early.test.ts

import { db } from "../../firebase";
import { collection, doc, setDoc, getFirestore } from "firebase/firestore";
import { addDocument } from "../addData";

// Mocking the Firestore functions
jest.mock("firebase/firestore", () => ({
  collection: jest.fn(),
  doc: jest.fn(),
  setDoc: jest.fn(),
  getFirestore: jest.fn(),
}));

describe("addDocument() addDocument method", () => {
  beforeEach(() => {
    jest.clearAllMocks();
  });

  describe("Happy Path", () => {
    test("should add a document successfully to the specified collection", async () => {
      // Arrange
      const collectionName = "events";
      const event = { name: "Test Event" };
      const mockResult = { id: "123" };
      (setDoc as jest.Mock).mockResolvedValue(mockResult);

      // Act
      const { result, error } = await addDocument(collectionName, event);

      // Assert
      expect(collection).toHaveBeenCalledWith(db, collectionName);
      expect(doc).toHaveBeenCalled();
      expect(setDoc).toHaveBeenCalled();
      expect(result).toBe(mockResult);
      expect(error).toBeNull();
    });
  });

  ...
});
Enter fullscreen mode Exit fullscreen mode

And the successful test run.

EarlyAI test suite

Was it perfect the first time? No.
Despite that, it probably saved me 1h or so for each test suite and got me to a good position in one click.
I am sure the team will keep improving the product and will naturally add E2E tests with time. 

Conclusions

Given the current trajectory of developers' roles and responsibilities, we could extrapolate that every developer will be empowered and expected to do more. 

Any generic coding assistant, JIRA AI, and EarlyAI can expand individual developers' capabilities to become team leaders with a team of AI agents in different disciplines (Coding, Product, Testing).

This is also true for indie hackers! The cost of creating software, hosting websites, and using DBs has never been cheaper. On top of that, more and more AI agents can support developers across different tasks. 

Overall, every individual developer will be supported by AI to create more complex and quality software, at unprecedented speed.

Top comments (0)