Ask Slashdot: Computer Science Freshman, Too Soon To Job Hunt?
First time accepted submitter stef2dotoh (3646393) writes "I've got about a year of computer science classes under my belt along with countless hours of independent online and tech book learning. I can put together a secure login-driven Web site using PHP and MySQL. (I have a personal project on GitHub and a personal Web site.) I really enjoyed my Web development class, so I've spent a lot of time honing those skills and trying to learn new technologies. I still have a ways to go, though. I've been designing Web sites for more than 10 years, writing basic PHP forms for about 5 or 6 years and only gotten seriously into PHP/MySQL the last 1 or 2 years on and off. I'm fluent with HTML and CSS, but I really like back-end development. I was hoping I might be able to get a job as a junior Web developer, but even those require 2+ years of experience and a list of technologies as long as my arm. Internships usually require students to be in their junior or senior year, so that doesn't seem to be an option for me. Recruiters are responding to my resume on various sites, but it's always for someone more experienced. Should I forget about trying to find a junior Web developer position after only one year of computer science classes?"
You are making a huge financial investment in both real dollars and opportunity cost.
Don't worry about developing web sites. Spend that time advancing your core knowledge. Learn as deep and as abstractly as you can. The technologies will change, the knowledge will not.
Any job you take now will likely not impact your career. Find out if there's a professor you can work with in another faculty instead - by going up and down halls knocking on doors if possible. Chances are they have some IT problems that need solving this summer or know someone who does.
..don't panic
First, the world has enough "web designers". Learn how to code the hard stuff, do distributed systems with no UI, do low-level coding and debugging, spend the time to develop real skills. Eventually take the "write an OS" and "write a compiler" classes any decent program offers. More than anything, be writing code as much as you can for any reason. "A writer writes," and a coder codes.
In the meantime, summer internships are good, they'll help more than your degree in landing your first full-time engineering job. It's really hard to find one summer of your freshman year (though it's worth putting in the effort to apply, just to learn that skill too), but summer after sophomore year is a real possibility. But note that recruiting for summer internships starts over winter break for the big companies, and pickings get slim as the year goes on.
Socialism: a lie told by totalitarians and believed by fools.
Please do not take this guys advice. He has drank the Silicon Valley kool-aid. Try to do side projects if you have time for them, but to think of graduating as "failing" is the stupidest thing I have ever heard.
Don't eat the scissors, and don't run with the glue. Ah, those were the days.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
You sound like the kind of person we may be looking to hire soon. I've hired a few people with your level of experience.
> I can put together a secure login-driven Web site using PHP and MySQL.
Error. One of the companies I own is based on a single product, a SECURE login system. I've been studying security for over 20 years and I've been programming longer than that. We came out with our login security system fifteen years ago and we've been doing real R&D on it ever since. We've found a couple of serious errors we made several years ago. That means that with 10 years of professional programming experience, fifteen years of security experience, and five years of security R&D, we didn't have a secure system. I guarantee you're not far, far smarter than us. If you think you've made a secure authentication and authorization system suitable for the demands of the public web, that's only because of how little you must know about the threats you face.
Have you read the 2001 Pennywize whitepaper, or one of my writings about the Pennywize vulnerability? If not, it's a pretty safe bet that you've coded the exact same vulnerability. That issue makes brute force orders of magnitude easier, such that it becomes pretty trivial to overcome any attempt counting that you think you're doing.
You mentioned you had some publicly available code. If you link to it, I'll be glad to point out two or three significant security issues in your code (if it's for use on the public internet, where it will be attacked daily.).
Assuming you're willing to learn about security, to be humbled, you.can send your resume and a link to ray@bettercgi.com .
The other suggestion I have for you is if you do work these next few years, think mainly about what you can learn from working. Don't consider the salary when deciding whether or not to take a position, but rather accept one (or not) based on what you can learn and who you can meet. Working on autonomous cars at Google for FREE would be wiser than working on yet another message board system for yet another local web design shop for $35,000. The "just another job" option gets you $35 K. Working on the autonomous cars gets you the opportunity to learn from the best and brightest in the world.
No, at this point he shouldn't be giving a flying fuck about languages. He should be studying data structures, algorithms, and learning how to break down problems. Languages don't matter, if you know the other stuff you can pick up whatever language you need in under a week.
I still have more fans than freaks. WTF is wrong with you people?