# How Normal Software Engineers Actually Use AI in Their Daily Work

> Source: <https://dev.to/brino666/how-normal-software-engineers-actually-use-ai-in-their-daily-work-59ic>
> Published: 2026-07-21 15:42:18+00:00

Let's cut through the hype. You're not building the next AGI. You're a working software engineer with deadlines, legacy code, and a backlog that never shrinks. So how do you *actually* use AI tools in your day-to-day work?

After surveying hundreds of developers and reflecting on real-world usage patterns, here's what normal software engineers are doing with AI—no Silicon Valley theatrics required.

The most common use case is the least sexy: letting AI handle repetitive code. GitHub Copilot, Cursor, and similar tools excel at generating boilerplate that you'd otherwise copy-paste from Stack Overflow or previous projects.

**Real example:** Writing CRUD endpoints in Express/TypeScript:

typescript

// Type this comment and let AI complete:

// Create a REST endpoint for user registration with email validation

app.post('/api/users/register', async (req: Request, res: Response) => {

try {

const { email, password, name } = req.body;

``` js
// Email validation
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
if (!emailRegex.test(email)) {
  return res.status(400).json({ error: 'Invalid email format' });
}

// Check if user exists
const existingUser = await User.findOne({ email });
if (existingUser) {
  return res.status(409).json({ error: 'User already exists' });
}

// Hash password and create user
const hashedPassword = await bcrypt.hash(password, 10);
const user = await User.create({ email, password: hashedPassword, name });

res.status(201).json({ userId: user.id, email: user.email });
```

} catch (error) {

res.status(500).json({ error: 'Internal server error' });

}

});

Did AI write perfect code? No. But it gave you scaffolding to refine, saving 10-15 minutes of typing. That's the real win.

Every developer inherits someone else's mess. AI tools shine when deciphering undocumented code or unfamiliar libraries.

**Practical workflow:**

This works especially well for:

Example prompt I use weekly:

"This Python decorator is using functools.wraps and managing some state. Walk me through what's happening step-by-step, then suggest if there's a cleaner approach."

The AI explanation often surfaces edge cases or anti-patterns you'd miss during a rushed code review.

Developers hate writing tests and docs. AI doesn't. Use this to your advantage.

**For test generation:**

python

def calculate_discount(price: float, user_tier: str, promo_code: str = None) -> float:

base_discount = {"bronze": 0.05, "silver": 0.10, "gold": 0.15}.get(user_tier, 0)

discount = price * base_discount

```
if promo_code == "SAVE20":
    discount += price * 0.20

return min(discount, price)
```

import pytest

def test_calculate_discount_bronze_tier():

assert calculate_discount(100, "bronze") == 5.0

def test_calculate_discount_invalid_tier():

assert calculate_discount(100, "platinum") == 0.0

def test_calculate_discount_with_promo():

assert calculate_discount(100, "silver", "SAVE20") == 30.0

def test_discount_never_exceeds_price():

assert calculate_discount(10, "gold", "SAVE20") == 10.0

def test_calculate_discount_zero_price():

assert calculate_discount(0, "gold") == 0.0

AI-generated tests aren't comprehensive, but they give you 70% coverage in seconds. You add the remaining edge cases yourself.

**For documentation:** Paste your function and ask for JSDoc or docstring format. Instant improvement over no documentation.

When Stack Overflow fails and your senior dev is in meetings, AI becomes your debugging partner.

**Effective debugging prompts:**

`TypeError: Cannot read property 'map' of undefined`

in React. Here's my component. What am I missing?"The key is providing context: error messages, relevant code, and what you've already tried. AI tools are pattern-matching machines—give them patterns to match.

Need a one-off script to migrate data? Parse logs? Set up CI/CD? AI writes the first draft while you drink coffee.

**Real automation example:**

"Write a Python script that reads a CSV of user emails, checks if each user exists in our Postgres database, and outputs a report of missing users."

You get working code in 30 seconds. Maybe it needs tweaks for your schema, but you've eliminated the "blank page problem."

This extends to configuration files:

Why memorize YAML syntax for the hundredth time when AI can generate it?

Be realistic about limitations:

Treat AI as a junior developer: fast at boilerplate, helpful for brainstorming, needs supervision for production code.

Here's what normal developers use (not a sponsored list):

Most developers use 2-3 of these, not all. Pick what fits your workflow.

The developers getting real value from AI aren't waiting for it to write entire applications. They're using it to:

This saves 30-60 minutes daily—time spent on actual problem-solving instead of syntactic overhead.

The question isn't "Does AI replace developers?" It's "Are you using AI to avoid the boring parts of your job?" If not, you're working harder than necessary.

Start small. Pick one repetitive task this week and let AI handle it. Build from there. The future isn't about AI doing your job—it's about you doing more interesting work because AI handles the grunt work.

Now stop reading and go automate something.

*Disclosure: some links above may earn a referral commission if you sign up.*

Want to go deeper on AI?? These are worth it:

*These are affiliate links — if you buy through them I earn a small commission at no extra cost to you.*
