I am one semester away from graduating with an operations research major. I only learnt programming when I was in university, but grew to love it very much. Since I am currently considering my future, I realized that I am nowhere qualified for a job in the technology sector, so my first job will probably be in engineering. Experienced PFers in software and computing industry, please give me your advice about what I should learn and do in my free time, so that I can eventually move into the tech sector (I am primarily interested in writing commercial software for optimization and business analytics, but the software industry in general in fine too). Here is what I stand: 1) Pretty strong in standard C and C++( I can do OOP and use STL effectively) 2) Limited to console programming (don't know GUI programming, visual C++ etc) in Unix. However, I am proficient enough in it to be able to write optimization solvers (linear programming or discrete non-linear programming) or discrete event simulation programs. 3)I don't know how to program practically in a UNIX, linux, windows, mac or web environment. 4)I don't know much about computer organization nor computer networks in general, but enough to explain why main() must return 0, garbage collection, what happens with uninitialized pointers etc. 5)Strong in the theoretical aspects of CS such as algorithms and logic. I got A+ for my 4 programming methodology/algorithms classes, and A for software engineering class. I have heard many fanciful stuff like ASP.net, VB.net, .NET, XCode from the job requirements descriptions of software developers. How and where should I start? I tried visiting forums and communities of developers but the terminology is just too daunting! As stated earlier, I am left with one semester in school, with just part of my dissertation left to write. For all practical purposes, I have no need to spend time in school until my dissertation defense. I could take extra CS classes in computer organisation or in Unix programming, but I could also do an IT internship while waiting for graduation. I prefer the latter, but I am not sure what company would be willing to train me. Sorry if it's pretty long- I would really like your advice!