DEV Community

Cover image for If an AI can do 100% of your job, you are doing the wrong job
Bishoy Bishai
Bishoy Bishai

Posted on • Originally published at bishoy-bishai.github.io

If an AI can do 100% of your job, you are doing the wrong job

Look my friend, everyone is panicking. I see it on Twitter, I see it in the cafes. People think AI is going to come and take the keyboard away from us. But listen to me. I’ve been coding since I was 10. I remember when we had to fix bugs for IE6—now that was a nightmare, like trying to dance Bachata on a floor covered in broken glass.

Actually, AI is not the end. It is just a new teammate. But if you play like a substitute player who just sits on the bench and does the bare minimum, yeah, you might get replaced. If you play like Messi? You are safe.

By 2026, the "average" dev who just copies and pastes from Stack Overflow is in trouble. But for us? We just use AI to do the boring stuff so we can focus on the "perfect flow."


The AI as the "Ball Boy"

Basically, AI is great at fetching the ball. You need a simple counter component? You need some generic CSS reset? AI is fast. It’s like a ball boy—it keeps the game moving so the star players don't have to run out of the pitch to get the ball.

But trust me, AI doesn't understand the tactics. It sees the patterns, but it doesn't feel the game.

1. Architectural Foresight: The Manager's View

AI can write a function, but it cannot build a "Champions League" winning squad. In frontend, this is your System Design.

  • The Bachata Transition: In dancing, you don't just jump from a basic step to a complex turn without a lead. In React, you don't just dump state everywhere. An expert knows when to use Zustand vs Context.
  • The "Red Card" Prevention: AI might give you a solution that works now, but in six months, it causes a "cramp" (a massive bug) because it doesn't scale.
// This isn't just a table; it's a flexible formation that works for any data.
interface TableProps<T> {
  data: T[];
  columns: {
    header: string;
    accessor: keyof T;
    render?: (value: T[keyof T], item: T) => React.ReactNode;
  }[];
}

function SmartTable<T>({ data, columns }: TableProps<T>) {
  return (
    <table className="min-w-full">
      <thead>
        <tr>
          {columns.map((col, i) => (
            <th key={i} className="text-left p-4">{col.header}</th>
          ))}
        </tr>
      </thead>
      <tbody>
        {data.map((item, rowIndex) => (
          <tr key={rowIndex} className="hover:bg-soccer-green/10">
            {columns.map((col, colIndex) => (
              <td key={colIndex} className="p-4">
                {col.render ? col.render(item[col.accessor], item) : String(item[col.accessor])}
              </td>
            ))}
          </tr>
        ))}
      </tbody>
    </table>
  );
}

Enter fullscreen mode Exit fullscreen mode

2. Performance: Avoiding the "90th Minute Fatigue"

Look, an AI will give you code that runs. But does it run at 60fps?
If your UI is lagging, it’s like a dancer who is off-beat. It ruins the whole experience.

Experts know about:

  • Memoization: Not just slapping @memo everywhere (that's like trying to sprint for 90 minutes straight—you'll collapse).
  • Code Splitting: Loading only what you need. Don't bring the whole stadium if you're just playing a 5-a-side match.

3. The Human Touch: Empathy & VAR

AI doesn't have a heart. It doesn't know how a user feels when a button is too small or when the loading spinner takes too long.

  • Accessibility (a11y): AI can add a label, but an expert ensures the "flow" for a blind user is as smooth as a sensual Bachata song.
  • Debugging: When there is a "Red Card" error in production at 2 AM, AI often guesses. An expert uses logic to find the source.

How to Stay "Elite" by 2026

  1. Don't be a Robot: If an AI can do 100% of your job, you are doing the wrong job. Focus on User Experience and Logic.
  2. Master the Fundamentals: JavaScript is your "ball control." If you can't juggle the ball, you can't play for Real Madrid.
  3. Learn to Lead: In Bachata, the leader must be clear. In code, your Types must be clear. Use TypeScript to "lead" your teammates so they don't make mistakes.

⚽ Pro Tip from the Pitch

In football, the best players aren't the ones who run the most, but the ones who see the space before anyone else. In 2026, don't just write more code. Look for the "space" in the project—the performance bottlenecks, the messy state, the bad UX. That is where you win the game.


✨ Let's keep the conversation going!

If you found this interesting, I'd love for you to check out more of my work or just drop in to say hello.

✍️ Read more on my blog: bishoy-bishai.github.io

Let's chat on LinkedIn: linkedin.com/in/bishoybishai

📘 Curious about AI?:
You can also check out my book:
Surrounded by AI


Top comments (0)