Navigating Junior Software Engineering in the AI Era
Starting a software engineering career now feels completely different than it did just a few years ago. As someone who began my journey during the rise of AI tools like ChatGPT, Claude Code, Cursor, and countless other AI assistants, I've witnessed this landscape shift first hand.
The New Reality
When I started at Manhattan Associates in 2023, AI coding assistants were just becoming mainstream and were not supported company wide. When I joined Rygen Technologies in 2025, I learned that these tools are essential in order to stay ahead and learn rapidly. This rapid change has created a unique challenge: how do you build fundamental skills as an early career Software Engineer while leveraging AI effectively?
What AI Can and Cannot Do
Through my experience building transportation management systems and working with enterprise-scale applications, I've learned that AI excels at:
- Boilerplate code generation - Writing repetitive CRUD operations, basic API endpoints, and standard configurations
- Syntax - answering questions regarding syntax
- Code explanations - Understanding complex legacy codebases faster
- Documentation - Generating API docs and code comments
But AI struggles with:
- System architecture decisions - Understanding business requirements and designing scalable solutions
- Complex debugging - Diagnosing issues across microservices or distributed systems
- Performance optimization - Making nuanced decisions about database queries or caching strategies
- Domain expertise - Understanding the intricacies of logistics, finance, or other specialized fields
- Giving feedback - You can be writing the worst looking code ever, ask you AI assistant how it looks, and receive "Great! - ..." as a response.
My Advice for New Developers
1. Talk to Your Manager
Communication with your manager is key. You need to make sure that you are allowed to use AI coding assistants and understand your manager's expectations.
2. Master the Fundamentals First
AI can write code, but it can't understand why certain architectural decisions matter. When I was implementing features at Rygen, I needed to understand:
- Database design principles
- API design patterns
- Concurrency and threading
- Testing strategies
These fundamentals allowed me to prompt AI effectively and validate its suggestions.
2. Use AI as a Pair Programming Partner for the Manual Stuff
Instead of letting AI write entire features, use it as a collaborator. Let it do all the boring manual stuff like creating directories, files, etc.
3. Don't Use it Too Much
Your biggest job is finding the balance. You do not want to become reliant on these AI assistants and act as a project manager. You need to understand every piece of code that it writes. One rule of thumb that I do is write the code myself. When I have a solution I consult an AI assistant for a code review before raising a PR. When the code has your name attached to it then you are responsible for it. It doesn't matter who/what wrote it.
4. Develop Your "AI Literacy"
Learn to:
- Write effective prompts
- Don't ask questions to the AI assistant like "Does this method look good to you?" and instead say "Act as a lead software engineer with an expertise in Java. How can this method be improved and align with the rest of the codebase?"
- Quickly identify when AI suggestions are wrong or incomplete
- Use AI to answer quick, simple questions like syntax or a quick code explanation.
The Skills That Matter More Than Ever
In an AI-augmented world, these human skills are increasingly valuable:
- System thinking - Understanding how components interact across complex systems
- Communication - Explaining technical decisions to stakeholders
- Problem decomposition - Breaking large challenges into solvable pieces
- Code review and quality - Ensuring AI-generated code meets production standards
Looking Forward
AI won't replace software engineers, but engineers who effectively use AI will outperform those who don't. The key is finding the right balance. You want to leverage AI to handle routine tasks while focusing your human intelligence on architecture, problem-solving, and understanding business needs.
My advice? Embrace AI as a powerful tool, but never let it become a crutch. Build real projects, solve real problems, and always understand the code you're shipping. The combination of human insight and AI efficiency is incredibly powerful—and it's exactly what the industry needs.
If you get your foot in the door then there is never a better time to be a Junior Engineer. With these tools you can perform like a Senior Engineer and learn quickly.
What's your experience with AI in software development? I'd love to hear your thoughts—connect with me on LinkedIn to continue the conversation.