Writing

Late to the Stack

Picking up modern web development with a background in industrial engineering.

October 2026 · 3 min read

I did not write my first line of JavaScript until I was twenty-five. My twenties had been spent on factory floors and in quality labs, learning to read wiring harnesses and torque specifications, then later on console in a control room, watching telemetry scroll past. Web development was not on the path.

The stack I know now — Node, TypeScript, Vue, Electron — arrived in the last two years. Mostly after hours. Mostly because I kept running into small problems that a small script could solve, and the small script grew.

Here is what I noticed. Coming to this from industrial work is not a disadvantage. It is a different kind of training.

The first thing factory work teaches you is that a system either works or it does not. There is no partial credit on a production line. A car seat missing a wiring harness will be found, will be flagged, will be corrected. There is no it seems to work in automotive. Either the airbag module is connected, or it is not.

That mindset — either/or, verified, no ambiguity — is exactly what debugging wants from you. In JavaScript, most bugs are not subtle. They are small facts that you assumed instead of checked. The console tells you what is real. The factory floor taught me to believe it.

The second thing: documentation is not overhead. On console, the electronic logbook is the record of what actually happened. It is not decorative. It is used. When something goes wrong later, the logbook is the only honest witness.

Software lives or dies by the same logic. The README you do not write today is the question mark someone will hit in three months. TypeScript, in a way, is just documentation the compiler enforces. ESLint is the same. So is a good commit message. When you have worked somewhere that treats documentation as real, you stop seeing it as a chore.

The third: tools should be boring. I have written this elsewhere in this collection. But I want to note it here because it is the single most useful transfer I know. The factory machines I worked with were not exciting. They were correct. The best software I build now tries to be correct too.

None of this makes me a senior engineer. I am not. There are gaps — testing frameworks I have not used, patterns I have not seen, scale I have not operated at. The web development world is deeper than any other domain I have worked in, and I know enough now to know how little I know.

But here is what I would say to anyone arriving late to a technical field from somewhere else: your earlier training is not wasted. It is a different kind of training. It gives you instincts about reliability, honesty, and restraint that engineers who came up through code do not automatically have. Those instincts are hard to teach. Patterns, frameworks, and abstractions are easy to teach.

The stack will keep changing. My background is not going to.

← All writing→