jurniss Posted December 6, 2014 Posted December 6, 2014 (edited) I am applying to Ph.D. programs in Computer Science at top 20 schools in the USA. I have been working as a professional software developer since I completed my B.S. around 4 years ago. My professional work has been at medium-large, well respected companies making shrink-wrapped software. Serious projects, no enterprise web apps or anything. But as a mere B.S. I have mainly been "wiring up" heavy algorithmic components written by my co-workers with Ph.D.s. Talking to hardware, real time user interface stuff, graphics, moving large amounts of data quickly, but nothing really research-level theoretically. That is why I'm going back to school. I got my undergraduate degree in math from a mid-level school. I did serious undergraduate research for a year, but only showed a poster at a small conference, no paper. I feel that my research experience might be weak compared to other applicants'. I'm thinking it will pay off to emphasize my programming skills because, as one self-help article said, the department is essentially hiring me to work for them. I believe my software engineering and project management skills are better than the average applicant straight out of undergrad. I know the C++ language well and have a very solid understanding of which language constructs lead to high-performing machine code. I know how to plan my projects and diagnose problems so that I don't get stuck. I spend a lot of time maintaining old code so I am careful to write code that will be easy to understand and modify in the future. If someone gives me a paper and says "implement this algorithm," I feel that I will be able to do it quickly, independently, with good performance and production-grade code quality. On the other hand, implementing algorithms from other people's papers won't get you a Ph.D. How much of my personal statement should I devote to this topic? How should I phrase it? Edited December 6, 2014 by jurniss
Icydubloon Posted December 14, 2014 Posted December 14, 2014 The department isn't hiring you to write code for them. They are hiring you to do research and generate publications for them. No matter how efficient you make your C++ code, if there is poor theoretic or algorithmic design behind the algorithm you are implementing, your code will not run fast. In my opinion, your project management skills are more useful than your coding experience. Being able to manage multiple conference deadlines and possibly a team of undergrad students is a good skill to have. You should highlight your development skills and PM skills roughly equally.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now