Live data from Hacker News

Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

medium.com

31–40 of 83 posts

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#31
> I come from a culture that values memorisation over creativity and problem-solving. Fuck that. To this day, I still Google how to bubble sort.

I really hope this is hyperbole, but you should never use bubble sort. I can't think of a single legitimate reason you'd want to use it. Insertion sort, is a good O(n^2) sort to know.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#32
post #9

An observation: a lot of these---especially 'soft skills'---can't be properly learned earlier. They're a side effect of experience, and the 10 years doing the job is the only way to properly get them. The things I most often hear from potential employers when we ask what we should focus on more in teaching them are "soft skills" and "troubleshooting". My response is now to ask which of the long list of technical skil…

An aphorism I occasionally use (I can be tedious): "the only way to make a twenty-year old comfortable leading a meeting is to wait until they're a thirty-year old." Doesn't stop us from forcing the poor bastards to do public-speaking assignments or dropping them into "teams" of completely inexperienced people they've never met with no leaders in the name of ephemeral "soft-skills."

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#33

> “ Don’t like your new boss? Just quit. Enough people do it, and their boss will fix it. You don’t like your company’s policies around privacy, diversity, inclusion, human rights? Quit.” This is psycho advice. It ranks up there with the crazy myths about just being able to instantly get new software jobs (when the actual time of job searches is usually longer than 6 months, despite the tone deaf wave of gainsaying c…

> This is psycho advice. It ranks up there with the crazy myths about just being able to instantly get new software jobs (when the actual time of job searches is usually longer than 6 months, despite the tone deaf wave of gainsaying comments this is sure to incite).

Well, everyone I know who's any good as a developer can just waltz into a new job on Thursday after being fired on Tuesday.

/s, if it weren't obvious, but I've read enough straight-faced comments of this type on Hackernews.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#34

> “ Don’t like your new boss? Just quit. Enough people do it, and their boss will fix it. You don’t like your company’s policies around privacy, diversity, inclusion, human rights? Quit.” This is psycho advice. It ranks up there with the crazy myths about just being able to instantly get new software jobs (when the actual time of job searches is usually longer than 6 months, despite the tone deaf wave of gainsaying c…

You know you could search for a job while working at one you don’t like.

Not all advice is literal.

Also, not everyone’s goal is to foster organizational change some are trying to help themselves first.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#35

Earlier quoted context omitted.

I forget what I don't use. Should I rememorize those things every 6 months?

99% of the data structure decisions I make at work are whether I should use a vector, a tree, a hashmap, or (very rarely) a list. the standard library implementation of whatever I choose is almost always sufficient. I wouldn't expect the average programmer to be able to implement all of these on the spot, but if you don't use them enough to understand the basic trade-offs, I have to wonder wtf you are doing all day?

Every programming job is different. I worked for 6 years at a well known videogames company and never had to use a vector or a tree ever. I was mostly using lists and dictionaries and occasionally an array, and that’s about it. I never had to do anything more complex data structure wise than that and I never really had to write my own data structure nor anything approaching an algorithm.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#36
post #18

Earlier quoted context omitted.

As someone with a family, my preference is that I can work from home to be around my family more. I feel this is more valuable to them than some more money in our savings account but that’s just me. To each their own!

Had a colleague die a few years ago. He'd lost some project work, and let his life insurance lapse. Had a heart attack just a few weeks later, and left a wife and 3 kids with very little. He worked from home and spent time with them, but had hit a point where money was a problem. The story sticks with me because he'd contacted me just a couple months before he died asking if I had any work/referrals, and I had nothin…

Well everyone would agree that generally more income is good. But cutting 10-20% on your income for a better job in terms of work life balance, interest or whatever else could be worth it for many people. Is there really that much difference between someone making 80K and someone making 100K? In a country like the U.S, where you can potentially lose your health insurance and sending your kids to college is super expensive - then maybe. In Europe the difference is gonna be only what kind of car you drive and how big your house is. In terms of your health, your kids opportunities in life etc, it doesn't matter that much.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#37
post #9

An observation: a lot of these---especially 'soft skills'---can't be properly learned earlier. They're a side effect of experience, and the 10 years doing the job is the only way to properly get them. The things I most often hear from potential employers when we ask what we should focus on more in teaching them are "soft skills" and "troubleshooting". My response is now to ask which of the long list of technical skil…

I would add that part of that experience is seeing how teams/situations/products pan out and then being able to recognize those patterns and nudge/head off issues early in the process.

In that respect I've learned a lot more from projects that have gone off the rails to some degree than projects where everything went according to plan.

In an ideal world you have the opportunity to give each person on the team the right amount of risk with enough of a safety net so that if things really go sideways the team has their back. Finding the balance with the rest of the project requirements, business inputs and other pieces is where it gets interesting.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#38
Regarding "Learning to say no", I agree that's an under-emphasized skill.

Too often, the answer I give when asked "Could the software be made to do X?" is "Yes, it could, but no, it should not."

The exported data is in CSV. Excel can import it. Yes, I could import an Office library and write XLSX files natively, but while the person making the request screwed up by making the wrong selection after marking up the data with colors and saving it as a CSV, dropping those features, the right thing to do is not screw that up, not to add complexity to the software.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#39
post #4

Googling how to bubble sort seems a bit extreme. I'm not much for Cracking the Code Interview type questions but this would certainly be a red flag.

I’ve been a programmer or otherwise involved with software since roughly 1998 and never had to write a bubble sort at work. Why would googling it be a red flag?

It might be surprising to the hackernews crew but 98% of software jobs have nothing in common with leetcode problems. Most people are writing Java, c#, JavaScript etc and using the built in data structures and doing list.Sort() or something similar.

Re: Things I Wish I’d Learned Sooner After Being a Developer for 10 Years

#40
> If you’re not familiar with the concept of T-shaped skills, or T-shaped people, don’t worry, most people are not. It’s an HR metaphor used to describe the skills of candidates. So if you think of your skills as plotted on a graph, you’ll notice you’ve got different levels in each. And if you unite those levels, you’d want them to create a T-shape instead of anything else.

I've always been a fan of 'pi' shaped skillset where you're deep in 2-ish+ areas rather than one core skill. It also means that you don't become known for just one singular thing. This becomes even better when the your deep areas complement each other and you'll find the sum greater than the parts.

Post reply on HN