I made the transition from civil engineer to software engineer in my 30s, I'm in my 40s now.

This is a long story. Feel free to email me myHNusername@gmail for more details or any questions you have.

I was doing websites for family and friends and small businesses while civil engineering, more as a hobby/side income.

I enjoyed programming and started considering writing software for civil engineers as a business, I developed some add ons for Civil 3D that we used in the office, some of those were given to a company that we purchased software from and integrated in to his suite of tools. Those were created on company time so that's fair. After leaving the large national firm during the economic downturn I did get connected with an Autodesk reseller and created three extensions for Autodesk for Civil 3D. These were made available to Civil 3D users worldwide. Which was cool, but the market for civil engineering software isn't very large so creating software for civil engineers wasn't a good focus/use of my time.

So I started learning to write web applications and taking on more complex client work before this I was doing basic websites. I was still working at a small civil firm. I learned Ruby on Rails, that opened up doors to more complex and higher paying client work. Some clients didn't like the perceived higher hosting and dev cost with Rails. So I came across the Laravel framework. Laravel has a great community and it was a game changer for me. I was able to develop web apps quickly and as the community and packages available grew it just became better and better.

The path I would recommend is learn HTML and CSS, registering domains and setting up hosting for websites. Start by creating and maintaining websites for small businesses in your area.

While you're doing this start learning Laravel. (Laracasts.com). Creating basic web apps, use Laravel forge and host them on Digital Ocean.

So web development changes pretty fast, currently I'd recommend building sites with Larvel, Livewire Alpine and Tailwind CSS. Check out Laravel Jeststream for a starting point.

Oh, this is important, you're going to want to develop on a mac, the base mb air is perfect or a mac mini, get the m1 if you have a choice. Developing Rails apps and Laravel just works better and easier on a mac. The time you save the first month will be worth the cost of the mac vs working on windows. (this is a highly opinionated topic btw, and just my take on it)

Laracasts has some web app tutorials, maybe create a to do list, or maybe a way to share files with friends or maybe a shared shopping list app.

And then be on the look out for a local small business that needs a web app of some kind and build it.

It's a lot to learn so just take it step by step, do a simple project, then take on one a little more complex. I think having an engineering degree will help you handle more and more complex apps and build up your skills.

I've done web apps for lots of small to midsize companies but also for NFL teams and fortune 500 companies, I'm currently a Sr. Developer for a Startup.

It's definitely possible, follow your dream.

Feel free to reach out if you have questions, want more details.