Archive for the ‘hackNY’ Category
College can be a great experience, but to get your pick of the best startup jobs you have to actively take control of your education and fill in the gaps that your college doesn’t cover. I’m just completing a college tour for hackNY where I talked about the startup scene in New York, the hackNY program for connecting students to great local startups, and the skills that computer science students need to focus on to get their pick of the best startup jobs.
There’s a lot of diversity in the education that computer scientists are getting in college, but few of the colleges are providing all of the education they’ll need to get a great startup job. Here are some suggestions for broadening your education and ensuring you have the skills to get the best startup gigs. This is a short summary of some key points from the tour. Keep an eye out for more comprehensive posts in the spring.
1. Passion: If you don’t care about what you’re working on, you won’t fit in at a startup. Startups require a lot of passion, and if you don’t care about both the problem that the company is solving and the craft of software development, you won’t enjoy the experience.
2. Learn how to learn: It’s amazing to me that most students manage to get through college without taking a required class covering how learning works, learning strategies and patterns for finding out and optimizing for your learning style.
3. Learn some languages: It helps to know some Java or C# – if only to prove that you can learn it. You need some experience in a dynamically typed scripting language like Python or Ruby so you can quickly script solutions to problems, and it’s becoming increasingly important to have a solid understanding of a functional language. Clojure and Haskell are a couple of good starting points.
4. Engineering practices: Working on a team, you’ll need to understand and use version control, grok continuous integration/delivery and get “test infected” so you can write maintainable code with good test coverage when that makes sense. These engineering practices are usually the biggest weakness for students. Make sure to work on them while still at college.
5. Product focus: If you’re ever planning to start your own company or to work at a really early stage company, read “The Lean Startup” and “Running Lean”. It’ll substantially reduce the amount of time you waste writing software that nobody cares about.
6. General knowledge/trends: If you don’t already, read <a href=“http://news.ycombinator.com”>Hacker News</a>. It’s the daily newspaper of the startup technology set. And make sure you know something about key trends like functional programming, single page apps, NoSQL data stores, mobile application development strategies, cloud hosting and Big Data.
7. Pick a (marketable) skill: Make sure you have depth in at least one skill that a startup could leverage immediately – whether it’s front end development, ruby, python or objective-C.
8. Make connections: The best jobs are never advertised, and it’s hard to become a great software developer without hanging around other great engineers. Look for meetups in your city and start to spend time with great developers. It’ll help to improve your skills – and your job prospects.
Most startups are desperate for passionate, skilled, well rounded engineers. Hopefully some of the advice above will help you to cut to the front of the line and get a range of interesting offers from some awesome startups.