Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How to prepare for first full-time software engineering job?
10 points by is-is-odd on Nov 12, 2021 | hide | past | favorite | 7 comments
Would you recommend learning the tech stack? The stack at the company is primary TypeScript with some Scala. I have some familiarity with TypeScript - should I continue to build projects to learn more or pick up a textbook to take a deep dive?

I have ~6 months before I start working.




Just to throw a random thought out there... given that in today's world almost every system we build is a "distributed system" to some extent, and given that I've found that quite a few developers don't know a lot about underlying network fundamentals, I'd suggest - depending on your current knowledge levels - spending some time boning up on networking. I mean things like learning how DNS works, what ARP is, how IP addressing works (mostly still IPv4, but don't ignore IPv6 altogether), and similar. In that same vein, learn to use common network troubleshooting tools well, from ping, to traceroute, to netstat, netcat, tcpdump / wireshark, and even nmap.


Excellent tip and really true for both the theory and the practice indeed. This almost never comes up in the CRUD apps that I had to make. But when it did come up, you better know stuff like ping, traceroute, netstat, netcat, tcpdump/wireshark and also nmap. I've learned about these tools from my networking classes.

But where I got to master them a lot more was playing hackthebox.eu with a friend! Also, the hacking skills obtained there are useful. Your employer might not always appreciate that you're hacking his/her company though. Not because you're hacking it, but because you're going "outside of your role" and not actually producing any features. So be careful with that one, I've burned myself twice on that front (it depends on company culture, I suppose).


I just took a networking course that literally covered each point you mentioned (although on a surface level, I'm sure)! Thanks for your contribution


Excellent. I think you'll find that knowledge invaluable in the years to come. :-)


Don't be afraid to ask questions. Also, avoid scope creep if you can. Good luck!


Many things can happen in six months and you could end up not joining the company. Either way, I'm sure you can learn the stack.

Here are some meta-skills and tips that will still be relevant whether you join the company or not and whether you stay there or not:

Reproduced from here: https://news.ycombinator.com/item?id=28422944 with some editing.

Recycling some replies. More context on https://news.ycombinator.com/item?id=26182988

- https://news.ycombinator.com/item?id=19924100 (understanding codebases, etc.)

- https://news.ycombinator.com/item?id=26591067 (testing pipelines, scaffolding, issue templates)

- https://news.ycombinator.com/item?id=22873103 (making the most out of meetings, leveraging your presence)

- https://news.ycombinator.com/item?id=22827841 (product development)

- https://news.ycombinator.com/item?id=20356222 (giving a damn)

- https://news.ycombinator.com/item?id=25008223 (If I disappear, what will happen)

- https://news.ycombinator.com/item?id=24972611 (about consulting and clients, but you can abstract that as "stakeholders", and understanding the problem your "client", who can be your manager, has.)

- https://news.ycombinator.com/item?id=24209518 (on taking notes. When you're told something, or receive a remark, make sure to make a note and learn from it whether it's a mistake, or a colleague showing you something useful, or a task you must accomplish.. don't be told things twice or worse. Be on the ball and reliable).

- https://news.ycombinator.com/item?id=24503365 (product, architecture, and impact on the team)

- https://news.ycombinator.com/item?id=22860716 (onboarding new hires to a codebase, what if it were you, improve code)

- https://news.ycombinator.com/item?id=22710623 (being efficient learning from video, hacks. Subsequent reply: https://news.ycombinator.com/item?id=22723586)

- https://news.ycombinator.com/item?id=21598632 (communication with the team, and subsequent reply: https://news.ycombinator.com/item?id=21614372)

- https://news.ycombinator.com/item?id=21427886 (template for taking minutes of meetings to dispatch to the team. Notes are in GitHub/GitLab so the team can access them, especially if they haven't attended).

- https://news.ycombinator.com/item?id=24177646 (communication, alignment)

- https://news.ycombinator.com/item?id=21808439 (useful things for the team and product that add leverage)

- https://news.ycombinator.com/item?id=20323660 (more meeting notes. Reply to a person who had trouble talking in corporate meetings)

- https://news.ycombinator.com/item?id=22715971 (management involvement as a spectrum)

- https://news.ycombinator.com/item?id=25922120 (researching topics)

- https://news.ycombinator.com/item?id=26147502 (keeping up with a firehose of information)

- https://news.ycombinator.com/item?id=26123017 (fractal communication: communication that can penetrate several layers of management and be relevant to people with different profiles and skillsets)

- https://news.ycombinator.com/item?id=26179539 (remote work, use existing tooling and build our own. Jitsi videos, record everything, give access to everyone so they can reference them and go back to them, meetings once a week or two weeks to align)

Write better. Always.


This is amazing thank you so much!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: