Live data from Hacker News

Ask HN: What did you do to improve your company?

news.ycombinator.com

71–80 of 174 posts

Re: Ask HN: What did you do to improve your company?

#71
1. Simplify - as a rule of thumb, if something looks too complicated it probably is. If you think there are too much "ifs" in the code, there certainly are.

2. Remove any "shiny-new-toy". A perfect example would be my bank, which operates in ~15-20 countries: Their interface isn't a shiny web interface with pretty animations to cover up a slow response time. The interface all employees use is built with ncurses. That speaks volumes.

3. Profiling the code and by doing so find unnecessary bottlenecks.

4. Never blindly reinvent the wheel. If a solution looks absurd but is highly used, chances are the solution is there to cover an edge case. Ask before you decide to "fix" it.

Re: Ask HN: What did you do to improve your company?

#72

Prior to my joining the team, our homemade migration tool used sequential versioning numbers for filenames, i.e. 001_migration_name.sql, 002_migration_name.sql. As our team was grew, it was very common to publish a PR, and right before merging realizing you had a conflict with someone else who'd merged to master ahead of you, using your sequence number. I made a small change to the system, replacing the sequence numb…

[deleted]

Re: Ask HN: What did you do to improve your company?

#73
post #23

It's risky unless you can protect yourself from Machiavellianism (willingness to manipulate and deceive others), Narcissism (egotism and self-obsession), Psychopathy (lack of remorse and empathy), Sadism (pleasure in suffering of others)

Well duh, literally everything has risk though. Your comment is effectively useless in my opinion as it adds nothing to the conversation of improving a company, you're just stating it's risky. It's risky to even get out of bed to get a coffee as you are required to manipulate people to do so! Even worse than that, you have to manipulate an entire logistics chain to get that fresh cup of joe. Just ignore that these are all free exchanges and that those poor manipulated people get paid for the work they choose to do and can tell you to piss off at any time they please.

Re: Ask HN: What did you do to improve your company?

#75

Document, host meetings, buy food, drinks and invite co-workers to have "time off" during a "work meeting" every now and then, but really documentation and generate good excuses that necessarily does not blame other departments. Document pain points is a big one, everyone says them, but not always are they fixed or prioritized. Something to fix those will work - like creating, documentation, sigh. People skills and p…

That's nothing to be sad about, quite the opposite. The longer you work in this field, the more you'll realize skills that make people "senior" are not technical most of the time.

Re: Ask HN: What did you do to improve your company?

#76
From 2003-2005: Co-created our database release process, integrated it with our code release process, developed our production problem management process, and built a bunch of our production monitoring tools.

Many of those things have since been superseded in the intervening 15 years, but it still pleases me to walk by the NOC and see tools of mine that I wrote 10-15 years ago still running (now maintained by others, but still running).

One of the most useful and longest-lived tools is one of the simplest (I literally built the essence of it in 4 hours, 6-10 PM one evening). It graphs a timeline, 1 second per pixel in X, logarithmic dollar value in Y, plot every order. That was the first version.

It's since evolved to have a bunch of per-minute summary data on the screen (AOV, CR%, errors/info/warning/404s, total bookings, paid vs unpaid orders, database connections in use, idle connections available, long-running transactions, long-running pages, etc per minute), records to a database, so you can "playback" outages or go exploring, etc. It's not the best tool for deep digging, but when you want a fast-reacting, "quick check" that the entire site is working post-release or post-outage, it's unambiguous that people are getting all the way through checkout (or not). You might be surprised what you can learn from such a simplistic tool.

Re: Ask HN: What did you do to improve your company?

#77
Since you said you’re long, recognize compounding is really powerful so focus on small but consistent improvements. You won’t feel like you’re moving mountains and you will start seeing things improve quickly.

To start the process I’d say it doesn’t matter what you focus on but it’s important to do something and then show it did improve something. Subsequently help people do what you did, don’t be the only person doing this.

More specific things that have helped us in the past:

-Do establish a habit of looking back and asking what could have been done better, we will do differently, and what we need to fix now. Important thing here is, fix at lest one or two small things that people identified. Make this a habit for everything, even small meetings or decisions.

- Try to get people to understand _why_ they are doing what they do. Building a feature? Break it down to first order impact (why our customers need it or what we are going to learn from doing this). Get people to understand the business company is in, more than the solutions people build everyday. Start small, with bugs, for example instead of features.

- Create transparency, building on top of the above see if the senior team can share business numbers/success/failures. This helps build purpose and trust among people.

Re: Ask HN: What did you do to improve your company?

#79
I implement a few changes wherever I work:

- Commit messages must include a ticket number (or a keyword like "hotfix"). This is enforced by a commit hook that's bundled with the project.

- Ticket templates that encourage clear tickets. A ticket should always explain why it must be done. It should also contain enough information for any team member to judge its priority, or start work on it.

- Any relevant discussion about a ticket should be in the ticket.

Just enforcing this makes a world of difference. It ties every bit of code to a justification. This way, if you decide to rewrite the project, you won't end up losing years of discussions and important lessons. You'll also have a much easier time prioritising and assigning tasks, since everyone knows what they mean.

Aside from that:

- My first pull request at a company is usually an update to the README file. It rarely matches how you actually use the project.

- I write "recipes" for common tasks (lint, deploy, test...). This way, you know that the CI system and every developer in the team performs those tasks in the same way. You can change the recipes, but they are always called with the same command. "scripts/clear-cache" is also easier to memorise than "docker-compose exec backend rm -rf /var/cache...".

- Add :party_parrot: to Slack

Re: Ask HN: What did you do to improve your company?

#80
post #71

1. Simplify - as a rule of thumb, if something looks too complicated it probably is. If you think there are too much "ifs" in the code, there certainly are. 2. Remove any "shiny-new-toy". A perfect example would be my bank, which operates in ~15-20 countries: Their interface isn't a shiny web interface with pretty animations to cover up a slow response time. The interface all employees use is built with ncurses. That…

i feel like there is an appropriate middle ground somewhere between "shiny-new-toy" and ncurses...
Post reply on HN