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!
05 2 / 2014
I had one of the most productive meetings of my life today, in just 30 minutes. I had the fortune of talking to Kris Duggan today about how to correctly think about the sales pipeline for a new business.
First, if you have a target of x new paying customers (a quarter, or a year, etc.), you need to have 10x that number of in-person meetings with potential customers, and 50x that number of emails sent to potential clients, to get those meetings. Want 5 new clients? Plan to email about 250 different folks, to pick up 50 in person meetings.
Second, it typically isn’t the right strategy to simply describe what you do (e.g. save people time by being a great excel add on to handle multiple files). Instead, showcase what your potential customer could accomplish additionally by using your service/product (e.g. increase analysis to 50% more reports per analyst and spend more time being strategic rather than massaging data formats).
Wish it hadn’t taken me so damn long to figure this out; I could have been way ahead of where I am today if I knew these two things 10 years ago.