Live data from Hacker News

Ask HN: Not liking my first dev job. Any tips?

news.ycombinator.com

21–30 of 32 posts

Re: Ask HN: Not liking my first dev job. Any tips?

#21
Some advice that gets passed around and is useful - understand the database schema. For a good number of applications, if you can understand the database schema you can guess at a lot of the functionality and a lot of the code base will just be taking data back and forth from a database to either a UI or an API endpoint.

This doesn't work for all applications, but a good number.

Re: Ask HN: Not liking my first dev job. Any tips?

#22
Starting with a blank canvas is the exception. Most programming work is fixing bugs, incrementally adding features, adding interfaces to other systems. Only early stage startups and research projects start with a blank canvas. Even new systems in existing businesses have infrastructure, staffing and technology constraints.

Re: Ask HN: Not liking my first dev job. Any tips?

#23
Lots of "get used to it" advice here, which is honestly pretty good and honest. Like, if you were a founding developer, you'd have the joy of watching your creation turn from an exciting new thing into a legacy product. Since all products become legacy codebases, learning to work in one is vital if you want to be more than a dilettante.

With that said, don't let the passion for fun and interesting projects die! Small, start-to-finish projects are exactly what hobby, side project, and open source is for.

Re: Ask HN: Not liking my first dev job. Any tips?

#24
I'm seeing some good advice here. I'll also say: some of this is just part of working in a large organization.

On your own or in small companies, you get requirements and you go build something. Most of your time is spent creating.

In large companies, you have to do a lot of exploration which could involve reading existing code or talking to other employees to figure out what to change. Most of your time will be spent researching and communicating, not purely creating.

Re: Ask HN: Not liking my first dev job. Any tips?

#25
The number of opportunities to build something totally green field are quite rare. Even a lot of startups are going to be using some off-the-shelf stuff to some extent just to get going.

This is true with most work. Whether it’s programming or landscape design or what have you, there is a shed load of work to do that no one is really excited about. This is why the whole “do what you love” is dangerous.

From my own experience, I find the best way to scratch this itch is to find a passion project and spend time on that as you can. This has the added advantage of getting you more time with code. You’ll pick up tips and tricks and tools.

Finally, don’t lose your optimism. Many of us work on projects that are fulfilling outside of work for just this reason.

Re: Ask HN: Not liking my first dev job. Any tips?

#26
Greenfield coding projects are very rare, except in consultancy, but even there you'll have to maintain what you build. Refactoring however can be the same type of thing. IMO use this opportunity to write tests and learn to refactor. Most developer jobs will be exactly like this, learn to embrace the suck and find the joy in the refactoring. Eventually you'll get the skills to get a better job or start a consultancy. You might also prefer being a business systems analyst where you spec projects instead of build them. IME BSAs work on a lot of the stuff you mention you like and developers just slog through the coding parts.

Re: Ask HN: Not liking my first dev job. Any tips?

#27
It’s hard to avoid doing a few such stints in a programming career. Being able to navigate and wring value out of an existing code base can be a superpower at times. But don’t let this be the predominant part of your programming career.

Some tips for your current situation:

1. Accept the slowness and irreducible complexity that comes with large codebases. There is no quick fix. Don’t beat yourself up. Even people who wrote a codebase find it frustrating to come back later and make changes to it.

2. Understand the data model and the core data flows of the codebase from a business point of view. Make diagrams and notes to capture this, but do it for your own reference and not to share it with others.

3. Understand the technical architecture of the project to a sufficient extent that you’re not getting bogged down in technical questions when trying to follow the logic. This is one of the reasons that simple languages like Java or Go are preferred over more complex languages. Understand what flavor of OO or any other paradigm applies in the codebase.

4. Create a fork or branch of the codebase where you can annotate the code and add any documentation. This doesn’t need to be kept in sync with the main code as long as it’s substantially the same.

5. When you’re working on a piece, look up git blame and commit messages to see how that piece came about.

All these steps will yield results, but slowly. My feeling is that there tends be an inflection point when all the various bits of knowledge start to add up. Until then it will be slow going.

Re: Ask HN: Not liking my first dev job. Any tips?

#28

Earlier quoted context omitted.

Donate to them 20 gifted hours of your time. I’ll bet whatever passion project you make in those hours they will love and want to fund for real.

Honestly not a bad idea. If I can find something I'm passionate enough about I think I'll do this. I'd be making something in my free time anyway - might as well make it something that could potentially make my time on the clock better. Thank you!

It's actually an awful idea. The whole benefit of working for a large company is that you DON'T need to sacrifice outside of your 9-5. This is that outdated grind mentality that managers sell to convince people this is needed to get ahead before they hand out promotions to their mates anyway.

Secondly, and I don't mean to disrespect you in any way, but if you're self-taught, and your prior experience is one man jobs working on small sites then I wouldn't expect the quality of your code to be great. I would be wondering how much time it would take to ensure whatever you build is really readable, documented, fully tested, maintainable, in line with the company's current tech stack, performant and scalable.

The benefits of working at a large company is that they have products that run on massive code bases that are, for the most part, REALLY STABLE. They move slowly, but they also move surely. New code won't be scrappy and volatile. Old code can stagnate, but it's because it hasn't broken in years. All of these things are learning opportunities you can take with you even if you strike out to start/work at a startup.

Re: Ask HN: Not liking my first dev job. Any tips?

#29
First two years in the industry are literally just a stepping stone to greater things. I usually give my mentees the advice that they might as well try out some companies despite red flags because this is the time where you figure out what you don't like so you can figure out what you actually want to look for. This is also your time in the trenches as a junior dev, anyway, so might as well make the most of it!
Post reply on HN