Hey guys, quick question. I currently work as an IT support analyst at an energy company for a little over 18 months (mainly dealing with desktop support, azure, office 365, automation with Powershell and networking), and was wondering if it was feasible for someone in my position to transition into a career as a C# developer?
I thought I wanted to make a career of IT (especially network ops/cyber security), but since being exposed to Powershell have truly fallen in love with automating and programming. After scripting and automating boring tasks at work, I found out that Powershell is based entirely in the C# .net framework, I was wondering if it would make sense to focus on Powershell some more and eventually move into C# , or to start focusing entirely on getting proficient in C# now and start putting together a decent portfolio in GitHub over the next year to eventually make a transition into developing?


Any tips on this (especially from devs who also started in IT) would be really helpful. Thanks
Please god if you find interest in programming, take the time to study programming. Like, obviously you can achieve things and that’s awesome. I am not at all trying to diminish that. I’ve just encountered several people that went down the same path, and when I came in as a contractor, I had to inform the company that they put way too much responsibility onto someone that didn’t really know what they’re doing. That’s obviously more of a fault of management than of the individual, but I do hope that you try to protect yourself and learn.
There are a lot of resources open to you. If you can leverage your company into paying for training, push as hard as you can. The biggest thing about development is that it does take some time away from work, where you do have to study. Finding that balance is crucial, but it does exist somewhat.
I wish you all the luck in the world and hope you truly do find an interest in programming, because I will say, I absolutely love it.
Pluralsight, stackoverflow, programmingmotherfucker, Reddit, books, you can totally do it if you try. Try is the keyword. You will take out of it what you put into it.
Thanks so much for your comment, and of course I’d make sure I study programming properly before trying to get into a professional role. I love learning new technology, and have been waking up at 5.30am each morning just so I have an hour to myself to learn Powershell (studying after work is really tiring).
I’ve gotten a copy of C# illustrated and will definitely take a look at the plural sight courses. Thanks so much for your encouragement, they weren’t joking when they said the C# community was the warmest 🙂 many thanks!
I don’t envy anyone that has to open up some of the programs I’ve written…
I support this 100%. I’m literally thinking the same thing you are, but I’ve encountered SO many programmers that don’t know what they’re doing … which makes me want to make sure I DO know what I’m doing before diving in as an actual professional developer.
It appears that asp.net is a significant part of being a C# developer, but maybe it solely depends on where you go.
take the time to study programming.
How you do this outside of scholar path ?
Tutorial are greats, but they lack consistency.
If it’s automation that you love about PowerShell, C# might not scratch that itch. If you’re trying to achieve more complex and powerful ‘Solutions’ and ‘Products’ though, then maybe it’s a good progression.
The type of development work you want to do ( and the job postings in that field ) will really point you towards one language or another.


It’s doable. I’ve interviewed an L2 engineer into our team when it was shaping. Back then he just started python and C# learning. He had no clue about js. I said to my boss, just move him to us, he’ll do fine just give him time. Nowadays, 1.5 years later he is still junior but he’s working pefectly fine with C#, building robust, conplex backends, transforming react based frontend boilerplates, and became certified azure developer.
So yeah it needs balls and some time to sacrifice, but just jump into it!
Not exactly the same, but moved from a different discipline to C# development.
I’ve always been “into computers” but was better at mechanical things, so I ended up with a degree in mechanical engineering and got a graduate job working as systems engineering in a factory that built automotive components. My job mainly involved commissioning new machinery and manufacturing equipment. All of this equipment spat out data that was used by the engineers that looked after the machines/processes to refine and improve the efficiency of the manufacturing and accuracy of the final product.
All of this data was handled by another engineering team called the Systems Design and Integration (SDI) team. It wasn’t just software they dealt with, it was also electronics design for pieces of test equipment, embedded systems, FPGA design. That sort of thing. Really interesting.
After a few years of working as a systems engineer I started to actively show my interest in moving to the SDI department and became friendly with a few of the guys in the team and their boss. I asked them what I needed to do to join the team. The answer was pretty simple… learn C# and SQL. An interest in electronics will be helpful, but the most important thing was to be genuinely interested in what you’re doing. No problem there. So that’s what I did. I learnt C# while still working as a systems engineer, and even built a few things that were used day to day on the production lines I was working on, then when the opportunity finally arose I moved to SDI. A few years later I was running the team of 6 developers, some electronics guys and a couple of database administrators.
Then my mum died and I moved back home across the country to look after my family for a bit. The reason I’d moved away in the first place was that there were no engineering jobs in the region that my family lived, but that wasn’t the case with software. Running a team of developers opens some doors in the job market and I didn’t have too much trouble finding a senior C# ASP.net web development role in a local agency. I didn’t have web experience, but if you’ve got a proven track record of being willing and capable of learning new skills, it’s not too hard for prospective employers to overlook any missing “requirements” from your CV.
And that’s where I’ve been for the past 5 years. I’ve worked on some really interesting (and a few boring) projects and don’t regret the career change. My engineering background brings a different perspective to conversations with coworkers and clients, as I would imagine your IT support background would. Long story short: if that’s what you want, just do it. If you can’t get a programming role with your experience then find a role that you can get that lets you work closely with a software team, then just work your way in. Obviously this isn’t always gonna work, and my experience may be very different to other people’s, but I’ve found that hard work and a desire to get somewhere goes a long way.
Good luck with your career. Software development certainly isn’t for everyone, and I do miss getting my hands dirty, but I don’t regret the move at all. Also it’s never bad to have another skill set to fall back on if you ever need to 👍
I think it should work, and your current experience should come in handy.
I did this. Got a CS degree. Was only able to land a job in IT at an MSP. Forced myself into an automation position for the MSP using ConnectWise Automate (while it was still Labtech, and partway into the CW transition) & PowerShell, because it scratched the programming itch. Automated their billing, wrote lots of C# console apps / small APIs to interface with all of the SAAS pieces that this MSP was using. Did that for a year or maybe 1.5.
That got my foot into the door for development. It’s good experience. The network support is a good background to have, having a grip on how networking works gives you a leg up over a lot of Devs especially if you go into web development. Moved myself into the development department for the MSP. Standard development firm work for lots of small businesses, tracking hours, lots of customer interaction. Great experience. Did that for a few years. That got me into a in house corporate gig at the location I wanted for more than twice the pay of the MSP & development firm.
Anyways, it can be done. Keep at it. Always learning. Start looking at what small C# apps can do more efficiently than PS.
Hey mate, thanks for sharing. Great to hear it can be done and the networking side helps a lot. I only spent 7 months revising for my CCNA learning about TCP/UDP etc, so glad to hear it’ll be useful for web dev. I’m hoping that by getting clued up with C# (and more Powershell) my work will allow me to get into the Infrastructure/development work a lot more, but really that’s on me to learn it well.
Did you learn C# solely from building small apps, or did you have some other resources to help get you proficient in it? Thanks for taking the time to tell me this, can’t tell you how helpful it is.
That’s very similar to how my job has transitioned.


I started as general systems support and management, and started learning powershell to improve on that.
Eventually I reached a point where it made sense to start learning more dot.net so I broke into c#. Our department has been very driven to create permanent fixes and eliminate daily work, so as we built out a stable network and server ecosystem, my support tasks shrank and my development and integration tasks increased to fill the void.
I’ve enjoyed the change so far, but still enjoy getting to go work on servers or help people with their regular it needs.
One thing that surprised me was how little of the challenge come from the actual coding, and how much is figuring out all the bits and pieces of the data I’m working with or the job process I’m automating. I’ve learned more about how our industry functions in the last year than all of the 4 years before that.
If you love to program, you will not only be good enough to do it full time. In time, you will be one of the best. Too many programmers who don’t love it out there.
You are me. It can be done. But, note that app dev is not the same as automating with PowerShell. While C# and PowerShell share the same framework and ultimately can be leveraged for similar operations, PowerShell was designed to automate repeatable tasks. True programming is much more complex (albeit, depending on the goal you want to achieve).
I made this exact transition. It wasn’t quick and easy though, and I was promoted internally, I didn’t get hired fresh in a new company.
I basically transitioned from writing powershell scripts to automate things, to writing c# apps and azure function apps to automate things. People appreciated a streamlined workflow thaty apps offered. Once I showed interest in becoming a developer, they pretty much gave me the job there and then. I have had no other training, degrees or certifications. The proof was in the pudding so to speak.
Absolutely you can do it, if you can get opportunities an your current employer then you can get some real live dev experience. My company is always short on technical folks and we would kill for support style folks who want to move over to development. There’s tons of resources online to learn just stick with it.
Energy company as in O&G?
Hey I am in the exact same boat. Hmu if you want to bounce things off each other.
Get an AWS cert and start looking for devops roles. It will be less of an up hill battle.
Just start doing it. Build stuff well and put it on your github.
Look for “career change” resumes and follow the example.
But also read books on programming well. Like Clean Code and Refactoring.
Watch talks on distributed systems design.
Honestly, there’s a huge shortage of developers. C# is probably less in demand than typescript / react, but there are still lots of jobs out there.
I’m curious why you say c# is less in demand than typescript and react? I’m in a similar situation to OP and switched from that stack to .net. Was that a mistake?
I was a graphic designer, I now use C# daily, just make something and stick it on GitHub, dump the link in your resume/CV and hope it impresses.
I did. I worked in design/build manufacturing as an IT support person and made the transition to developer in the same company.
A word of warning: you will be underpaid when you make the shift from administrator/support to dev. HR will tell you that the move is lateral or give you ten points, both of which are totally unacceptable. Get comfortable with your skill level and hop to a shop where software is the front line product. You will make a lot more money and, if you’re anything like me, be a lot happier. You’ll also have a ton more upward mobility.
C# devs
null reference exceptions

source

Categories: .NetCodingCsharp