r/FullStack • • 4d ago

Career Guidance Is coding by hand & actually knowing the codebase worth it?

Hi everyone,

I'm a full-stack developer, however, due to the rise of AI vibe coding, I'm not sure if coding by hand is worth the effort anymore.

I took a few months off after using AI, but I genuinely have a passion for coding. I am aware that AI isn't perfect and still requires human intervention.

My main question is, "Are you still dev'ing like before AI?"

Besides knowing your complete codebase and how your code functions, where do you feel the value lies in still writing code by hand?

Lastly, where do you see the value in continuing to progress and learn in 2026 and beyond?

61 Upvotes

42 comments sorted by

23

u/creaturefeature16 Stack Juggler (Fullstack) 4d ago

100%, unequivocally, without a doubt.

We're currently in a mania, an irrational exuberance over a new technology. One that we're acting like it's a great idea to throw away 40 years of best practices for a workflow that has been truly viable for less than a year. On the flip side, agentic coding has exacerbated the worst parts of coding and development, by accelerating the parts that didn’t need accelerating in the first place. We didn’t need to write code faster, nor did we need to generate code we didn’t fully understand.

If you like to code manually: keep it up. Real understanding comes from friction, and friction comes from problem solving. If you cut out the problem solving, whatever you think you know is superficial.

There's definitely this weird push to diminish domain expertise, and you should be VERY skeptical of the ulterior motives behind anybody who is pushing that.

There's a reason when you look at Anthropic's job posting, they are asking for deep domain expertise:

https://job-boards.greenhouse.io/anthropic/jobs/5110511008

"Have strong proficiency in Python, Rust and/or Go"

https://job-boards.greenhouse.io/anthropic/jobs/5301737008

"Proficiency in at least one systems programming language (e.g., Go, Rust, Java, C++) or Python at scale"

Everything fails at some point, nothing is infallible, especially non-deterministic pattern interpolators like LLMs. Everything works, until it doesn’t. When it doesn’t, who debugs the debugger?

Yes, I am coding the way I always have before LLMs, while also integrating them in balanced and sensical ways that don't interfere with my learning and critical thinking, and leverage their strengths to that I can do better work, not just faster work.

6

u/kidclutch00 4d ago

What does integrating LLMs in balanced and sensical way look like for you?

10

u/creaturefeature16 Stack Juggler (Fullstack) 4d ago

In my opinion, these models are a delegation layer, so I have four main buckets that I categorize in when I am delegating tasks:

  • Rote
  • Refactor 
  • Research 
  • Reinforcement (tutorials, Socratic method) 

I also have a checklist that I use to ensure I'm delegating, and not handing over the reigns. I wrote this for junior developers mostly, but I still use it and find it's applicable to anybody who's reaching for these models: 

  • If I did not have access to an AI tool, could I still accomplish this task?
  • Am I using the model to deepen my understanding, or expedite the answer? If I had to audit and verify the generated output, could I adequately explain what was happening?
  • If I'm learning a new concept, have I done proper research to know the right questions to ask?
  • Have I cross-referenced and verified the approach through other methods (reading documentation, standard search tools)?
  • Is this a truly rote task that's been done 100 times before, or a task that requires decision-making somewhere in the process?

I write and record a lot about this topic, but I don't want to spam a bunch of links, so if you're curious, my profile bio has links to my website which has these essays/guides, as well as my YouTube which has some videos on how I approach this balance.

5

u/nodnarbiter 3d ago

I have to say how absolutely refreshing it is to read sensible comments about AI and to know that there are still people on this platform who aren't captured by this, I think largely manufactured, delusion that "coding is dead" and that software engineering has become nothing more than prompting and babysitting chatbots. This "mania" needs to stop so we can start using this technology responsibility for the strengths it does have instead of clumsily ramming it against all of our problems.

1

u/Mountain_Goat_455 2d ago

curious are you in FAANG?

1

u/creaturefeature16 Stack Juggler (Fullstack) 2d ago

Good god, no. 😂 

1

u/Mountain_Goat_455 2d ago

ok got it. yeah because your account is different from a FAANG workflow so I was just wondering

2

u/venkythezulu 3d ago

Thank you for this fantastic answer. I needed to hear this.

8

u/HiddenNerdPrince 4d ago edited 22h ago

If you treat ai as anything more than a junior dev who knows coding in many languages, i swear you’ll be stuck badly and be unable to fix it’s mistakes cuz you won’t know what it screwed up. System design and architecture even at a basic level gives you a big advantage over ai and helps you develop an application step by step, and you’ll only learn this by hand on coding. Ai is extremely overrated especially at startups and small companies. I’m sure at bigger companies, they already went through the cycle of discovering ai is unreliable without an experienced human behind steering it.

4

u/tuhijatambien 4d ago

Yes 

Knowledge of how things work is an advantage, always has been, always will be. 

In software as in any other field. 

7

u/ByronScottJones 4d ago

Think of the AI as a junior engineer. Would you review their code at each commit before accepting a pull request? In my case, yes always. I review the code it has created for each feature, which is committed in its own separate branch. I also have a second AI review the work of the first, along with static analysis, UI testing, etc. As long as you have a strong CICD process in place, code isn't just appearing in your project without thorough reviews.

5

u/Serializedrequests 4d ago edited 4d ago

Yes. I haven't found the right words for this, but there is a galaxy of difference between "I don't know and don't care, here you do it LLM" and actually buckling down, taking the problem by the horns, and solving it yourself. You are the creative intelligence.

LLM's can do amazing things, and they are still just mimicking human intelligence. Most efforts to hand them control seem to be me to be rooted in laziness. They all result in entropy increasing.

I'm not saying there are no use cases for LLM's or that plenty of humans don't write worse code, but what you're seeing right now is all the companies and industries with shitty broken culture take that culture to 11. They think they have a "do anything" button, so they're doing exactly what they want: try to extract money by creating nothing of value. Windows 11 is slop. AWS is working on becoming slop. I think most things I interact with every day have gone visibly downhill in the last 5 years.

2

u/Former_Produce1721 4d ago

Knowing the architecture and reviewing code is important. Writing by hand not so much.

1

u/Limp-Confidence5612 3d ago

Yeah, dictating code is also acceptable.

2

u/TheRNGuy 4d ago

Knowing codebase: yes. Coding by hand: sometimes. 

2

u/Mental-Abrocoma-5605 4d ago edited 4d ago

Yes

Like i can't avoid AI development since half of the projects i do are too heavy handed for coding everything manually (and also cuz i don't have enough time to re-learn the basics and do them myself), but imagine setting a basic model with only 2 entities and asking the Agent to do it, that straight means you probably dont care for it, does that mean you need to do everything by hand? Probably not but if you do everything with AI and then ship it without doing code reviews or retro alimentation be prepared to fix it Cuz there's a high chance something could go wrong

Also I'm only talking about complex projects, if it Is by a easier task like Lets say an OOP or basic DSA project (could be for practice or for college), do it by hand first if you Wanna learn it properly

2

u/ShadowMosesCuh 4d ago

Depends on what you're building and how important reliability is.

There's an increasing number of companies that only care about the product and not so much what's underneath. There, AI agents do all the development while technical staff only exist to feed requirements and evaluate the output. Otherwise, source code is treated like a black box, where you trust your tests to ensure business and technical requirements are met and let any missed failures get identified in production. There, knowing the codebase or how to code holds little value.

The majority of companies though still treat AI as a development assistant. You as a technical staff member come up with the spec, AI executes on the spec you feed it, you scrutinize both the code and the feature outputs to ensure it aligns with business and technical requirements, then ship. Typically you can let AI do the coding part autonomously and also use it to drive the other tasks with your own oversight. In this case, knowing the codebase is critical so you can scrutinize the output. Hand coding is also useful, but only as far as it reflects your ability to read and understand the code itself.

AI is great an interpolation, not so much as judgement. The best way you can make yourself useful is to fill that judgement gap. Knowing the codebase helps with the technical side of that.

2

u/HongPong 4d ago

you will get better results and less crap around the edges. it's a good idea

1

u/Alternative_Win_6638 3d ago

Hi, your dilemma is understandable, and I can help you resolve it from my own perspective.

I worked as an aeronautical engineer for several years before shifting to software development.
As an aeronautical engineer, I never built a plane myself, not even once. I was always focused on designing, planning, and handing off the work for someone else to implement, whether it was a wing, an engine, or a flight computer. This doesn’t mean I wasn’t aware of aerodynamics, mechanics, materials, numerical analysis, and other related disciplines. I was just focused on providing the most accurate and usable data to the implementer to do their work. Then I was able to integrate and validate the work so the product met its expected objectives.

So as a developer, the analogy is this: yes, you need to be familiar with programming languages, frameworks, data structures, cloud, UI, or real-time concepts, as applicable to your role, but you should learn to do the handoff and control the process, not do all the work by yourself. This was always true, but as developers we used to hand off the work to ourselves, so the borders blurred and we didn’t pay much attention to specification, design, and validation. Now, with the progress of AI, the handoff is important, so you must be able to specify, design, and plan in order to be competent today.

I made a video that explains how I approach this: https://youtu.be/xpDmr7llSAQ

1

u/AlfalfaLive3302 3d ago

If you think in terms of long term goals, which management never does, (and you’re not a manager) then yes.

1

u/DryLook7889 3d ago

Nah just vibe it while you still can, this career will be gone by 2030

1

u/anortef 3d ago

Neither have any worth today. What AI has made relevant is knowing why something acts how it does and knowing how to design systems at scale with ways to ensure the system being build is doing so in a sustainable manner and operates as expected.

I have several production apps that I have not looked into the code at all but had 0 bugs reported and have 0 security issues because I have tens of thousands of all kinds of tests, the whole pipeline needs to run at night because all the validations take hours while the minimal one passes in a couple minutes and is used to steer the AI.

I have also talked with several CTOs and Team Leads in my country regarding the impact of AI and the answer is unanimous: "if a developer does not use AI or stubbornly checks everything the AI does it is fired because that person is going much slower than the rest".

I have made apps that saved the company thousands in licenses and would have taken before AI easily a couple years to make in an afternoon, I have migrated a legacy API with more than 200 endpoints that serves millions daily in a month with no downtime and only a couple minor bugs.

Anyone defending coding by hand or even reading it is just acting out of nostalgia.

1

u/Negative_Math_8395 2d ago

so then why do they need you? couldn't they prompt it all themselves?

1

u/anortef 2d ago

Because knowing what to tell the IA is the important part. I do not tell the AI "migrate this API" I give it a full context of how, why, how to measure, how to write, why it has to write that why and also have other agents doing the full validation pipeline.

Basically, I build systems which is the knowledge that AI still cannot replace.

1

u/Negative_Math_8395 2d ago

why can't the ai just figure all that out too?

1

u/anortef 2d ago

Because, as much as Altman would love to, AI is not AGI yet.

1

u/KirinFire 3d ago

This question is weirdly formulated. Knowing your codebase doesn't mean writing the entire code by hand.

And obviously you should know your codebase because otherwise you wouldn't be able to make any progress and develop your app further if you didn't know what your code does, knowing the codebase doesn't mean coding by hand, you can let the AI generate all the code with your coding convention rules while you review AI's input.

1

u/Emergency-Cycle7981 3d ago

“I’m not sure if coding by hand is worth the effort” and “I have a passion for coding” are conflicting statements to me. If you have a passion for coding, it’s worth the effort. Anything you have passion for is worth the effort.

2

u/MentionFar3280 2d ago

When I interviewed a candidate I asked him to write a array hasmap problem and asked him to solve it he did. Apparently I asked him to fetch data from an endpoint and hash the results with their ids including file write function. Guess what he replied "these things are completely out of syllabus...."

0

u/phil_lndn 1d ago

related:

does anyone here still hand assemble machine code, now that we have C compilers?

(i think you have your answer there)

1

u/Plenty_Line2696 4d ago

As with everything in development, the answer is: "It depends".

Small brochure website? Fuckit, no need to read the code.

Something which needs to be expandable, maintainable, sizable, robust, reliable and a bazillion other -ables: own/understand the code, you don't have to manually code it, but you have to understand it and make sure the technical design is logical all the way through.

0

u/Any-Ring6621 4d ago

It’s not an and.

Coding by hand is not worth it.

Knowing the codebase is.

-2

u/Freed4ever 4d ago

Coding by hands, no. Understanding the codebase , yes.