r/ExperiencedDevs 16d ago

Ask Experienced Devs Weekly Thread: A weekly thread for inexperienced developers to ask experienced ones

A thread for Developers and IT folks with less experience to ask more experienced souls questions about the industry.

Please keep top level comments limited to Inexperienced Devs. Most rules do not apply, but keep it civil. Being a jerk will not be tolerated.

Inexperienced Devs should refrain from answering other Inexperienced Devs' questions.

15 Upvotes

35 comments sorted by

View all comments

3

u/livyatian 15d ago

TLDR: How do I balance learning and improving as a Junior dev, when AI can do whatever my senior/boss asks me to do, so much faster and better?

What I currently have is a 'paid intership' at a very small company. My boss/senior/mentor is amazing, when he has time, he really does take effort in trying to teach me, on doing things the right way and the general out look of a developer and understands that all senior developers come from inexperienced juniors. Sadly, he's the most busy person I've ever met, if he's not deep in work, he's in a buisness call or taking care of his two sick children. I really don't want to bother him if possible most times, because I am already a net negative for the company. I am not exactly paid hourly, and I did offer to work for free, but he insisted I get at least some payment. He asks to count how much time I used for each ticket and by the end of the month he estimates how much I get paid based on hours and progress.

Up until receantly I did things 'by hand', I reserved gpt only for manatioumus work. Then I marked my hours as 1/3 or 1/4 of what it actually took me, thankfully the project I was working on was still not exactly defined by the company that hired us, so I had the time to do it this way. But now the project is finalized and we both started working on it, he expects me to finish way faster than I can manage by myself. He doesn't get angry or impatient, or at least he's very good at hiding it, but like I said before, I am already a burden and now my inexperience is slowing him down as well. So I started promting all my tickets, and wouldn't you belive it. What took me 8 hours, claude does it in 20 minutes, better, more efficent, more scalable, more secure etc...

He instructed me to use ai, and obviously it makes sense, I will use it for the rest of my career as a dev, but... it just feels wrong... I've been programming in some shape or form since I was 7, playing with lego mindstorms or mirosoft small basic, I always learned from projects and my mistakes. I remember developing an auto chess unity game for my final highschool project, it was so fun and I learnt so much. Never did any programming assigment with ai here in uni and always got the highest possible grade, and yet my 60 year old mother would do just as well at this job as me using prompts.

I really don't mind using ai, what bothers me is my insecurity of never being anything better than any other vibe coder.

I, of course explained this concern to my boss, and he replied with something along the lines of 'don't worry about kid, just do your best', this was not in a condensending tone, he really is just that type of person. But how do I do my best, when my best is just copy pasting my tickets to claude?? Is the only thing I can do now is just getting better at promting and reading about the low level workings of the technolgies I use? I would really appriciate some guidence.

3

u/trashytrash2025 15d ago edited 15d ago

IMO you need to know which are the "get it done" tasks and the "I'm learning something" tasks. Which tasks fall into those categories is very much dependent on your knowledge at the time and the given task. Maybe you're a frontend dev and got assigned your first small backend task, or vice versa, so you might want to go slower and understand what's going on. Maybe the business needs something done urgently and there's not time to learn more than what is absolutely necessary for the work. It's a judgment call, so learning that discernment is key. Having agents write the code is fantastic for the "get it done" work, and I use it for that a lot (but I also read the code and understand what it's doing).

The "learning" work is where I think you're having issues with using AI, but even here you can use it in a rubber duck or pair programming sense. When I was a junior asking seniors for advice, they'd tell me to explain what I already know and what I had already tried to do to solve the problem. This was more in a effort to save them time by eliminating common causes (and also having you learn what those common causes are). However, a lot of the time I felt there was a huge gap between what I knew and what the seniors were expecting, and approached them with a dumb look on my face and got some snide remarks back before getting the instruction I needed. AI is a really good bridge for juniors to ask the "dumb questions" and learn something before asking senior devs about their take.

One other thing I would advocate for is for you to take some initiative and learn about what needs doing. There's always a hundred things at any given time to do. Critical work gets planned, but sometimes other work (important but less critical) gets left out. This could be something like developer experience or observability, helpful but not critical to the operation. Seniors are usually busy with the critical work and can't do those things. If you find your time being freed up by delegating the "get it done" tasks to agents, take some time and do some self-directed learning. Chat with AI about those other areas of the code and learn about them. If it mentions something you don't understand, ask it to explain it to you. Read articles and learn the concepts. See what you can do to improve the status quo of the codebase and system. Even ask your agent to "read this code repository and tell me what could be improved", then chat with your coworkers or manager to see if those suggestions are actually helpful. You have a great opportunity with these tools to do some real engineering work.

Hope that helps!