Sat Nov 03, 2018 10:59 am
#1648821
Hi Ramesh,
Welcome to the Forums!
When looking to hire software engineers I've found that a CS degree alone is often of little indication as to a candidates programming abilities, therefore I wouldn't let not having one put you off if you are interested in pursing a career in software development. You might have to work a little harder to get a foot in the door, however, that you have an engineering degree will I'm sure be enough to pique an employees interest provided you have a solid portfolio with which to demonstrate your programming abilities.
The best way to develop your programming skills is of course to start writing software so I suggest you pick very problems to try and solve with your programming and then learn along the way. You will find that your knowledge of data structures/algorithms/design patterns then tends to grow out of necessity as you look to try and find efficient ways to solve a particular problem. There are fantastic resources these days online, including YouTube.
I *highly* recommend the book Effective C++ which really is a must read for anyone serious about working with the language.
I do however also add a word of caution that as good as C++ is for developing good programming skills, it can present a barrier to learning vs other higher level languages. Do not be afraid to consider using other languages such as Python if wanting to play around with learning various programming paradigms. It isn't cheating.
I also highly recommend that you stick with the aerospace engineering if you can. There is certainly a huge amount of crossover between both skill sets and being good at both will make you highly employable.
I own a small games/simulation development studio and we are currently developing a PC based Bush Flying Simulator. A solid programmer with a strong aeronautical engineering background is the holy grail for us.
Similarly, prior to working on the Flight Sim we did a lot of simulation consultancy work with a Racing Team. It soon became apparent how important it was that their design engineers have good programming fundamentals to get their jobs done.
Best of luck - happy to chat more via PM if I can be of any assistance.