<p>I was wondering what were the chances of me finding a software engineering job. I am looking to get into some aspect of the defense industry. </p>
<p>I'm about to enter my senior year as a stats major graduating with a GPA around 3.6-3.7 (according to my predictions) from a standard state school. I came a little late to programming (which ive become enamored with) so I won't be able to take as much CS courses as I would like. </p>
<p>Right now it looks like I'll have:</p>
<p>Java Programming I and II
Discrete Structures
Software Engineering
Database</p>
<p>Is there any hope to find a job? I plan on taking remedial CS courses after I graduate to fill the gaps but I really want to land a job ASAP.</p>
<p>You may want to apply to some smaller firms who may be looking for entry-level Java programmers. Since you say that you like programming, you may want to look into one of the Java certifications. I.T. certifications are good for folks who have non-CS technical degrees.</p>
<p>You may also want to further your knowledge with databases…either through certifications or academia because with your Stats degree, you can get into data warehousing and data mining (which uses a lot of Stats).</p>
<p>I wouldn’t necessarily say any sort of certification is strictly necessary - seems a bit fluffy.</p>
<p>I’m not sure whether you’ve covered these topics, but 2 topics that are absolutely critical to CS are 1) data structures and 2) algorithms (designing and analyzing them) - try to fill in these gaps in your knowledge.</p>
<p>See if you can get the algorithms, operating systems, and networks courses in.</p>
<p>A motivated person with strong logical thinking skills can self educate a considerable amount of CS – though doing so is easier starting from a larger base of CS concepts learned in class.</p>
<p>You can skip databases, and software engineering. I agree with the classes that others have suggested, but I think you should definitely try to take a computer architecture class – few people will take you seriously as a programmer if you don’t know how caches work or what a register is.</p>
<p>^Not really. You’ll just be confined to working in application-centric fields that rely more on “creativity” rather than technical prowess - like web application development and mobile development. In these kinds of fields, the hard part is not the technical hurdles - these can usually be solved with some research; the problem lies in the ideas.</p>
<p>Thanks for the info. Do potential employers buy into the ‘self taught’ method for any of this stuff? Or should I have proof i.e. transcripts to show that I’ve taken/learned the particular topic?</p>
<p>People in the computer industry have to self-educate on the job to keep up with new concepts and technologies.</p>
<p>However, employers see the claim of self-educated knowledge as being stronger when backed by work experience (preferred for experienced applicants), open source software contributions, or course work / research (mainly for new graduates). And claimed knowledge is often checked in interview questions.</p>