06 2 / 2014
It’s never been a better time to be a software engineer in Silicon Valley. If you’re going out for your first “real world” software development job, here are the main things I hope you’ll come in *already* having a decent handle on:
- MVC (Model–view–controller paradigm)
- DOM Manipulation (Perhaps with JQuery)
- How HTML Templating Frameworks operate (you could do worse than using Mustache)
- Client-Side vs Server-Side frameworks (example: AngularJS with NodeJS)
- RESTful Routing (Rails has them built-in)
- How CSS Frameworks operate (e.g. Bootstrap)
- SQL Table & Index Design (how would you optimize an SQL query to be faster?)
- ORM (Sequelize for NodeJS seems to be well-documented)
- Page Caching & Partial Caching (Rails still has an amazing caching layer)
- Git or Mercurial Source Code Management (just put your project on GitHub already!)
- TDD (Test Driven Development, and CasperJS is pretty good)
- Documentation formatting (like JSDoc).
- OAuth (implement signin with google, twitter, or facebook)
The best way to show me you have a decent handle on them, is to make an open source app that’s available on GitHub and deployed on Heroku – all for free!