Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I have actually found that I learned the most when working without people who could/would help me, and have also seen this mirrored with others. You may think your current situation could stifle your growth, but I actually think it's an amazing opportunity to grow much faster than most of your peers (the main downside being that you might be allowed to make mistakes that wouldn't happen with the supervision of someone more experiened). You're going to be forced to learn how everything works, make high-level decisions like planning projects and deciding what tools/software vendors to use, and actually own the implementation/outcome of those decisions (which will be excellent feedback) - even many senior developers never truly get to this point and by comparison you're going to be building those skills very early in your career.

You probably do want to learn some of the basics and force yourself to adhere to them until you are experienced enough to know when to break the rules. Definitely use version control, look up typical styling/formatting/etc conventions for the languages and tools you're using, probably write unit or at least integration tests, prefer to use libraries when possible for non-trivial problems that aren't core to what you're working on. If you want exposure to this I recommend joining a quality open source project's developer discord/slack/whatever just to see how they do things. You could also maybe convince your boss to pay for consultants or for you to attend to conferences or whatever if you want individual feedback (if I were your boss, I'd see this as a good compromise - you get some level of senior supervision for $2k/yr instead of $200k/yr).

My number one advice is to NOT rely on LLMs for things that they're not smart enough for, and to always make sure you actually understand what it's doing any time it creates code for you. This is the number one issue I see inexperienced engineers making these days. ChatGPT is great for converting simple to moderately complex requirements into simple to moderately complex code under a certain size, but it's NOT GOOD at giving reliable high level advice that is "non-obvious" and unlikely to be in its training data. So please do not rely on it too much to explain complicated things to you (unless that thing is very well documented on the internet, which you would have to verify by searching for it anyway) and don't ask to eg tell you if your unit test is good. It can certainly save you a lot of time and is often right, but it's also often wrong in ways that are very difficult to spot unless you know a lot about the subject, and eventually (if not already) you'll need to advance to the point where it can't help you with your problems.



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

Search: