DEV Community

loading...

Transition path to web/cloud software development and architecture from C/embedded domain(13 yrs experience)

TK
・1 min read

Hi. Apologies if that title looks too naive to you. I have been a developer for the last 13 years working with a large product company. Throughout my career, I have coded in C in the job, though I do know some of the non-fancy languages/frameworks used in the electronics software domain. Other than that I do know C++/STL etc. Basically, I have been feeling disconnected for a long time now with my job and looking to make a transition. I entered this domain as the money was good but need/greed did not make me think what I really want. I know it's going to be difficult path to really make a transition with that much experience but staying in a job/domain you don't love anymore is frankly doing more harm than good to my career and life. My end goal is simple, making applications and products that I would love to build. Designing and developing applications like whatsapp or even a browser extension excites me. I want to continuously learn and improve and be happy doing so. As of now, I'm just looking to learn web and cloud technologies and develop some hobby projects to learn and showcase my abilities. Any senior developers/architects (working for companies like Netflix/Uber/Amazon etc) if seeing this post, can you please share the path I can follow for an year or longer, if required, to make such a transition. I mentioned above roles and companies as I think that can highlights my needs but if anyone can share views, please do so. Thanks allot.

Discussion (1)

Collapse
bradstondev profile image
Bradston Henry

Hey TK,

I really appreciate your candor and honesty. I personally believe that's huge when considering a career transition.

Just to give you an idea of who I am, my name is Bradston Henry and I work at IBM as Developer Adovocate (aka a tech teacher). In my previous roles I have worked as a Senior Developer, leading teams and guiding the direction, implementation and deployment of various mobile applications and have also worked asManager of a team of developers.

Interestingly enough, about 7 years ago, I made huge transition in my career and went from working as a Mechanical Engineer at a HVAC engineering company with zero programming knowledge to working at IBM as a Jr. mobile developer.

Our stories are a bit different, as you have a tech background and have some programming knowledge but I hope what I share can be helpful.

My biggest advice to you would be to try your best to really narrow down what you would like to do in a new role so you can be focused in this transition. By that I mean, what technology(s) you really would like to work in.

If there was one mistake I really made when I was attempting to make my transition was that I was too broad in my skillset. I wanted to be a game developer who knew C#, C++, Javascript and SQL. But in truth, I ended up knowing none of those technologies that well and most jobs, though liking candidates with broad set of skills, put a premium on knowing one skill very well.

One of best ways to figure this out is probably to try and take some short online tutorial courses on sites like Coursera, Lynda, EdX, Udemy and similar places that offer coding courses on different programming languages and topics. This was actually very helpful for me as it helped to really figure out what aspect of programming I liked and disliked.

For me, I found that back-end systems didn't really suit me but front-end and mobile felt a lot more natural fit. NOTE: I'm all about free stuff so don't feel you have to spend money to take courses. Go for the free ones to try them out and see how you feel before necessarily making a financial commitment.

Note: This is an accidental plug but just genuine advice.

I would also check out tutorials, webinars and courses that larger and smaller companies are putting out there for free. As an IBM developer advocate, we are always hosting webinars on various technologies and they are always free and are a good way to gauge what you may or may not like. Here is a link to our developer advocacy webinars we host on Crowdcast (IBM Developer Crowdcast), but know that other companies like AWS and Microsoft do similar things to educate aspiring and professional developers.

Once you get an idea of the direction you want to go, I would try to code and make projects as much as you can. Really dig in there and learn. I literally just released a blog about what I tell all aspiring devs to do and that's to build projects and release them.

Also, a lot of people I have met in the industry have done Code Bootcamps and it has seemed to really help them make that career transition. The only caveat to them is that they normally very intensive and last weeks to months, so you might have to step away from your current job to do one. Also, most of them cost a considerable amount of money and depending on your financial situation that may not be the best fit.

One last note, a lot of the Big Tech companies (like Amazon, Uber, Netflix, Microsoft, etc) really emphasize doing programming/coding tests in their interview process so you may want to read into that a bit. Not all big companies (E.G. IBM) but other def do. I personally am not good at them and don't practice for them and have found my way into the industry so it's def possible not to have to be a pro at them.

So that was a bit long but I hope was helpful in some way. There is probably quite a bit more I could say on this topic but hopefully this encapsulated some of my key thoughts.

Forem Open with the Forem app