|
|
| | Ask HN: How do I transition to be an SWE? | |
1 point by kleiba 5 months ago | hide | past | favorite | 4 comments
|
| | I've worked in academia for roughly ten years but don't really see my future there. I've always enjoyed working with computers since I was a teen, and have reached an advanced level as a programmer, however, mostly for academic prototypes and hobby projects. What should I do/learn to prepare for a successful career as a software engineer in the industry? |
|

Join us for AI Startup School this June 16-17 in San Francisco!
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
|
- Proficiency in xyz language is extremely important. I think this is misunderstood to mean that becoming a Python/Typescript/whatever expert is what differentiates the pros from the bros. I would actually recommend studying the theory of programming languages from first principles, instead - Dan Grossman's "Programming Languages" class on Coursera is great for this. It lays the foundation for understanding how any programming language works, from a theoretical and mechanics basis. I was able to pick up new languages and understand concepts in existing languages way, way faster after building this foundation. The "10 hours to Python mastery" types of courses are a waste of time and focus on the wrong things in my opinion - invest the time in foundational knowledge instead.
- YouTube videos and blog posts are sufficient to become a proficient programmer. This is a bit of a con in my opinion. Both formats are like a sugar-heavy diet - you'll feel high and satisfied quickly, but in the long-term, the lack of information in these formats will starve you of high-quality information. Get into a habit of returning to first principles - figure out what the canonical textbooks are for the subject matter you are trying to learn about, acquire them, and read chapters out of them when you are stuck on a problem. This will deepen your understanding and give you a basis for exploring related subjects. Also, read the man page. Read the man page. Read the man page.
Also check out OSSU (https://github.com/ossu), which has a bunch of great recommendations for free/nearly-free courses that will complete a full CS curriculum. I lack a CS degree, so I periodically reference this curriculum when looking for a new subject to study in my downtime.
Happy to talk more if you're interested, we need more smart and capable individuals like yourself in this field.