Hacker News new | ask | show | jobs
by mikasjoman 2664 days ago
Definitely not too old, Dev manager here. First step, study some programming courses using video where you build full stack projects. F.eg. meteor JS by Stephen grider on Udemy.com or the one by Andrew Mead (possibly better). Take both courses because you get more training on one framework before learning other stuff. Why meteor js? Because you can focus at the one language everyone needs in web development; JavaScript. Nobody can escape learning it given that it rules the web. Also you don't want to learn multiple languages as a beginner, because it makes your learning curve much harder. Then build something, for real and release it. The smallest thing you can imagine that would improve somebody's life just a tad and put it up online. Then continue extending it with more features, improve what you already built, and release at least weekly. Second, you lack a CS degree. BUT there is tons of people with CS degree that write crappy unmaintainable low quality code. Lucky for you I say, because with some effort you can use this widely spread quality disaster in the field to outshine many of those with fancy CS degrees. Most juniors with CS degrees I meet doesn't have a clue on how to write high quality maintainable code. So the next step would be to focus on that. How? Order these books, read them, take notes and practice the concepts: Clean code, Pragmatic programmer, Code complete. Second practice unit testing and although it's a bit hard when you begin writing them, just keep at it. Almost everyone I interview for software engineer positions seriously lack understanding of quality practices such as: clean code, defensive programming, unit testing etc. Since quality problems cost me millions - I would pick a junior without a CS degree but that has competence in those quality practices over an intermediate/senior lacking those skills (big majority I interview). Analysis and design is also important, but you can read up on those subjects as you move forward. To conclude; just learn the basics, build stuff and release often. Then remember this is an engineering discipline, it's not a business where crappy code belongs (sadly the business is full of it). Excel at quality practices and you will definitely raise a lot of interest from interviewers. This advice is the same I would give any newly baked CS graduate. Why? Because crappy programmers cost us more support, bug fixing, slows down development and so forth. If you decide not to be part of this ongoing software quality disaster, you can quite quickly become a very interesting candidate.