Section 4.0 - Career Advice for Current CS Students
The greatest advice that I could give, having been an intern for four summers, is to NETWORK, NETWORK, NETWORK. Establishing relationships is one of the most important aspects of career building. Getting along with fellow employees, of all levels from the corporation, can open doors of opportunity. The field of software development is a fluid environment; projects end and people migrate to other areas of the business. As massive as the field of software engineering is, in actuality, it is a somewhat small world. For example, one day this summer, I was walking to lunch and encountered someone that I had previously worked with more than two years ago. He still worked for the same company, but was relocated to an office near mine. You never know who you will run into in the future. It is always better in this business, to not burn bridges after you cross them.
While in school, you are thrown a lot of facts and theories, which may seem to be meaningless; however, an internship allows you to put into action some of the things you have learned. Depending on your area of focus in this field, some college classes will be more useful than others. For me, being a software developer/engineer, the more languages, environments, and design methodologies you are exposed to, the better. The courses that benefited me the most in my internships were: CS 345 (Software Engineering), CS 252 (Discrete Math), CS 430 (Programming Languages), CS 340 (Assembly Language), MATH 248 (Computer and Numerical Algorithms), and as much as I hate to admit it, TSC 210 (Introduction to Technical and Scientific Communication).
Participation in extra curricular opportunities within the computer science department at JMU, such as our student chapter of ACM (Association for Computing Machinery) and the programming team, can further advance your understanding of the field. Being a member of the programming team in 2003 was one of the great accomplishments of my academic endeavors. My team did very well in the ACM regional competition held at UVA, and it gave me the confidence to know that I could compete and succeed with my peers from other universities. It requires a lot of commitment, but I highly recommend it.
My best advice to students trying to prepare themselves for the workplace is to be exposed to as many technical opportunities as possible. The higher the GPA, the better your chances will be of landing an internship. A killer resume will definitely take you far. Taking a broad range of courses in the technical field, including upper level mathematics, physics, and engineering makes you more desirable and flexible, and allows you to stand above the crowd.