I started a new job about two months ago, and AI is used for nearly everything. In my previous role, we wrote most of the code ourselves, but here we often use tools such as Copilot in plan mode to generate and implement solutions. Sometimes the results arrive in a few minutes, while other tasks take several hours.
I can get work completed by prompting the AI, but I'm worried that I'll stop developing my own programming skills and become dependent on it. I'm still learning the codebase and don't always understand what the generated code is doing. What's the best way to stay useful, build a strong understanding of the project, and continue progressing as a programmer in an AI-heavy workplace? If you use AI this way, what do you do while it is working, and how do you turn the process into a learning opportunity?
5 Answers
Don’t let delivery pressure eliminate all of your learning time. Choose one skill or part of the system to study deliberately, then use AI to ask questions, compare approaches, generate small examples, or review your understanding. Still spend time investigating the problem yourself before asking for a complete implementation.
Experienced engineers often benefit more from AI because they already have years of context for judging designs and spotting problems. You can build that context by reading existing code, tracing real requests through the system, debugging failures, and understanding the reasons behind decisions. When AI produces an answer, treat it as a draft that you must review, test, and learn from—not as a replacement for thinking.
While a long AI task is running, use the time to inspect the relevant files, read documentation, write or improve tests, reproduce the issue manually, or review the generated plan line by line. Keep a personal list of concepts you had to look up and study those separately. That way the waiting time supports your growth instead of becoming passive downtime.
Your biggest advantage will be understanding the system around the code: the architecture, data flow, business rules, deployment process, and why particular design decisions were made. Anyone can generate snippets. Someone who understands the whole project can give the AI better instructions, catch bad suggestions, and make sound tradeoffs.
That’s part of what worries me—the codebase seems to change constantly, sometimes faster than I can understand it.
AI can help you get something working, but make yourself explain the result before accepting it. Pick parts of the generated code, rewrite or rebuild them without AI, and test whether you can produce a simpler version yourself. That turns the tool from an answer machine into a tutor.

A useful habit is to ask the AI to explain its assumptions and propose alternatives, then verify those claims against the code, documentation, and tests instead of trusting the explanation automatically.