[HN Gopher] Ask HN: How to find companies that build sustainably?
___________________________________________________________________
Ask HN: How to find companies that build sustainably?
This is going to be a very cynical post. If you just want to sneer
at me, please just save us both some time and skip it. My current
position has left me questioning much of what I thought about my
career, tech industry, and business. The philosophy here boils
down to: "We need to move extremely fast. Why? Because there's no
moat, and competitors will eat us alive, eventually. Therefore, we
have to build the crappiest thing we can as fast as possible and
make enumerable business promises that we don't have the human
capacity to keep. Therefore, the only people who will survive at
this company will be those who don't really care that what they're
building is setting up the next person for a world of pain.
Everyone who wants to do a truly good job will burn out and/or be
pushed out. But we'll keep attracting starry-eyed talent by
puffing ourselves up as this incredible, smart organization (that,
for now, is making money)." The thing is, I chose this situation
based on what I thought a successful company looks like. Now, I
want to work somewhere: 1) That has slack built in. 2) That gives
a damn about system quality. 3) That can grow without overreaching
(see point 1). Does this type of company even exist? I feel like
even if it does, I'm blind to it because my head has been in this
"uber-lean startup" space and I almost can't believe anything else
exists. It seems like, if something isn't trying to grow at
breakneck speed, it is stagnating or dying. I want to believe this
isn't the case. Have you found a place in this world that grows
sustainably? If so, how, and do you think I can replicate the
search strategy? Thanks.
Author : bckr
Score : 16 points
Date : 2022-03-20 18:50 UTC (4 hours ago)
| yuppie_scum wrote:
| Great question and I'd be very interested in knowing what to look
| for as I pursue future opportunities. Because I have seen
| multiple times that usually non-technical upper management
| doesn't give much of a crap about the tech debt that piles up
| around a "done fast not right" production stack, and wants to
| continue operating as lean as possible to attract further
| investment, and you will continue to operate your franken-MVP in
| perpetuity.
| bckr wrote:
| exactly! the business has to actually value employee
| satisfaction and system reliability.
| mooreds wrote:
| My two cents:
|
| Find a company that is profitable and hasn't taken VC money. This
| can either be a bootstrapped software company or a company for
| which software is an enabler.
|
| In both those cases the software is an asset like any other, so
| maintenance and quality can be built in. There'll be trade-offs
| of course, but in these environments there is a most of some kind
| and you can put better practices into place.
| bennathanson wrote:
| YMMV but I think it all boils down to incentives, institutional
| maturity, and leadership. Here's what I look for:
|
| 1) What industry it is. A banking or security company typically
| has strong incentives toward building secure, stable systems.
|
| 2) Maturity. Experienced organizations may still have the impulse
| to hack things together, but at least have had a chance to
| internalize the value of security, testing, and realistic ship
| dates, and to hire sufficient staff to actually look after those
| things.
|
| 3) Who leads the organization. Nontechnical cofounders can be
| indispensable in their own way, but technical cofounders are more
| well equipped to appreciate why good software takes time and
| should be built robustly and securely, and balance other voices
| in the organization that may not have the benefit of that same
| background.
|
| Business risk can come from a failure to innovate in some
| situations and a failure to provide stability in others. I've
| been at both extremes of this. It sounds like you're at one now.
| I prefer to be somewhere in the middle - pushing myself,
| learning, but not burning out.
|
| Fortunately my current company fits this criteria. Anecdotally:
|
| 1) Tests are included in the scope of tickets
|
| 2) We have institutional memory of what happens when you build
| too quickly
|
| 3) Leadership is rich with experience in security and engineering
|
| Good luck in your search!
| bckr wrote:
| > Leadership is rich with experience in security and
| engineering
|
| I think this is so important.
|
| Thank you
| simplicialset wrote:
| The main issue is that barriers to entry in software are very
| low. If there is a successful company doing something with
| software then there is no way to lock someone else out of
| building a similar service with some slight variation. So I'd say
| that as long as you are looking at for-profit companies then
| there is no way to avoid the issue of cutting corners, bad system
| design, and burning out engineers with stress and overtime
| because the leaders at these companies know that all the other
| companies are doing the same thing in order to stay ahead of
| their competition.
|
| You might have better luck if you start looking at non-profit
| companies but you'd have to actually figure that out for yourself
| and work at one to see if it was a better fit for what you are
| looking for in terms of work.
| bckr wrote:
| > The main issue is that barriers to entry in software are very
| low
|
| Great point. This is such a double edged sword because it is
| the reason that I got into software in the first place.
| xcambar wrote:
| It seems your perspective on the industry has been built over the
| hype of "Software will eat the world".
|
| Aell, I'm not discussing whether this is true or not but just
| remember that building software is about building automation and
| experience. What I mean is that you must look for a company that
| enables or offers leverage to an existing company or industry.
| What it will provide you is the understanding that software is
| not the beginning and end of all things. It's a tool. A very
| valuable one, but still a tool.
|
| And then, you will leave the vicious circle of hype and software
| centrism and maybe you will land in a much less fancy, much more
| interesting, software project in which you can commit for a
| longer term and actually feel like you have an impact.
|
| FYI: it feels good.
| dinopete wrote:
| I think most of this comes down to leadership. The company I work
| for is trying to grow rapidly in terms of users and doesn't make
| a profit currently, but does care about quality and does have
| some slack and most importantly cares about its staff and its
| users. The company is in the mission-driven social enterprise
| category so maybe that helps.
| paulcole wrote:
| Ask in the interview! Some ideas to get you started:
|
| * How do you make money?
|
| * Do you make more money than you spend?
|
| * What's the size of your market?
|
| * Who's your biggest competitor?
|
| * What do you do better than them and vice versa?
|
| * What's the biggest threat to this company being around in 10
| years?
| bckr wrote:
| Thanks for this, I do have some (EDIT: A LOT) other questions
| around this that I'll be asking.
|
| * What is your company's relationship with velocity?
|
| * Do you find yourselves doing more slowing down to be more
| careful, or speeding up to win a competition?
| * What slows you down? * How do you
| accelerate? * What is the expected time scale
| of a typical initiative? * How many
| initiatives does a typical engineer work on simultaneously?
| * How was a recent initiative measured for success?
| * How do you know when to stop an initiative?
| * How do you decide when to start an initiative?
| * Describe the company's philosophy about planning work in
| terms of top down VS bottom up planning. * In
| your experience, does the company behave in accordance with its
| philosophy?
|
| * Describe your approach to on-call shifts?
|
| * How many alerts does an engineer receive on a typical on call
| shift? * How do you make sure that engineers
| are not succumbing to alert fatigue? *
| Describe a situation where I am getting an alert as an
| engineer. What does it look like for me to successfully respond
| to that alert? * How do you document the steps
| necessary to take when responding to alerts? *
| How do you decide when to create a new alert?
| * Do you have a central list of all alert policies for your
| system?
|
| * How do you know that everything is working or not working in
| your system? * How many subsystems do you
| have? How do you determine ownership of your subsystems?
| * Describe your approach to observability and instrumentation.
| * Can you show me your observability system? *
| Can we pretend to solve a problem in the system together, using
| your observability platform?
|
| * How do you do deployments? * How long does
| a deployment take, assuming approval? * How
| long does it take on average to get approval?
|
| * How do you ensure code quality? * What's
| your worst section of code? What makes it bad?
| * Can you show me part of your codebase?
|
| * What is your approach to onboarding new engineers? How long
| does it take to get a dev environment set up?
|
| * What is your current architecture?
|
| * How do you make architectural decisions? *
| Where is the architecture going? * What are
| the downsides of the current and future architecture?
| * How much work is driven by "deep integrations", in other
| words how much code supports unique partners?
|
| * What is the onsite culture like? Do coworkers typically
| become friends?
|
| * How many hours does the average engineer work per week?
|
| * How many weekend days does the average engineer work per
| month? * What is the typical cause of after
| hours work? * How much time does a typical
| engineer spend in meetings per week? * How
| many days off does a typical engineer take per year?
___________________________________________________________________
(page generated 2022-03-20 23:02 UTC)