Hacker News new | past | comments | ask | show | jobs | submit login
Things I’ve learned in my 20 years as a software engineer (simplethread.com)
1605 points by D_Guidi 19 days ago | hide | past | favorite | 722 comments



40+ years of experience here, and I'll tell you the #1 thing I've learned:

    * Software is a social service.  Its for other humans.
Incredibly, it doesn't matter how educated the developer, they still seem to have to learn this lesson themselves, over and over, until it sinks in...


I do a lot of dev work with non-profits and such. About a year ago I was working on an extremely difficult project as a volunteer where I was insistent that a specific part was vitally important to getting the project to move forward (generalizing tables extraction from scanned OCR docs) and I was spending a lot of time on it. One of the devs I worked with, with 40+ years of experience, basically told me this exact thing. He argued that what I as working on was a waste of time and that I shouldn't work on "code golf" problems, because of the likelihood of failure and that ultimately I should consider the human side of the problem. He said it was best to work on other things instead.

Fast forward a month later, I managed to actually do it, and it worked almost flawlessly, across about 100k scanned PDFs. Multiple long-term projects spawned off from the extracted information, including some projects from the dev who told me to stop.

My point being -- sometimes it seems like that line is used as an excuse to not tackle hard problems if they seem likely to fail. I agree with the line, and it's the exact reason I worked on it as hard as I did, but the dev failed to consider that I understood the social part of the problem, on experienced principle.


> generalizing tables extraction from scanned OCR docs

I would actually categorize this as a human problem. As a society, we scan documents all the time. Data entry is a massive time sink usually involving lots of corrections.

True code golf would be like switching languages/frameworks for no discernable reason or trying to hit an arbitrary code coverage metric because you're unsatisfied with the current one.


It's a permanent balance. I have to "manage" (but I still am a main contributor) a small team in a big investment bank with angry busy trader-users, irrational "global" management in other continent thinking we're all dumbasses in Asia, and people on loaned rotation.

So, like your colleague, I try to strategize delivery. I would never tell a guy not to work on a genius idea that could change the entire paradigm, in fact I let 3 of my guys do just that for the last 3 months, together, sometimes alone. But they either not deliver, or very slowly, or sketchily (not working as well as thought).

So what I do a lot is a compromise. I force them, despite their complaint I don't care enough about the big picture of their non-delivering work, to take smaller issues every week. 1 or 2, give a candy to the user, and do your stuff then.

It worked incredibly well: while they've delivered absolutely nothing of value in their own initiatives yet (but I still think they can, it's just very long term), the users are delighted by a constant stream of little innovations and we've been recently identified as one of the most productive team.

Meanwhile, the team next to us, algo programmers in C++, can take 2 months to enhance an error message. Because they're all revolutionizing the system and have no time for basic human needs. They don't know yet, but they're gone soon. The budget people found there's a new model of delivery that could work, I wonder which one ;)


Good on you for trusting your team and allowing for such experimentation! We need more people in management with this attitude.


As per the blog's opening statement: context is key.

The industry (and really, it's not specific to the industry) is rife with people who take pearls of wisdom out of their context and apply them without the context to serve their own ends.


minuscule anecdote: my most cherished lines of code were an 8 lines vba excel macro to count duplicates for a non tech colleague.

Turned her day from hell to cool (she had to filter duplicates by hand and quadratic formulas over 2000+ lines spreadsheet.

That's what computers are for.


I once spent two hours thinking about how to recursively assemble a tree structure from the database in a way that the JS presentation library wanted the data, then finally I wrote 2 lines of code.

Definitely my most cherished code.


Hah, this is something I've done when trying getting data from a government agency that can't run or write code themselves. It's usually in some awkward meta-adversarial context and they tend to be fearful of macros and such, but it's possible to get around that fear by writing everything in excel functions.

Sometimes those damn excel sheets take hours and hours to make even though it would otherwise take me less than a minute to write in SQL or unix. But it pays off every time and pushes a clear message that they can do better.


> sometimes

Any rule of wisdom, followed blindly, leads to disaster.

Don't substitute rules for good judgement.


Or sometimes you have an approach that is high risk/reward. That's totally fine to take as long as your aware of the risk and have mitigations or offramps at the right points if you find the path isn't viable.


If we take your first statement to be a "rule of wisdom" then it is either false, or all roads lead to disaster anyway.


If you leave off the rest of my post, you're likely to misunderstand it :-)


If you're volunteering, why shouldn't you work on projects that you find interesting? I don't understand the point of view of the older dev.


I've found that volunteer work is _harder_ in terms of getting the human aspect right.

New volunteers sometimes expect the red-carpet treatment as someone volunteering their (pretty expensive presumably!) time and as someone accomplished in their field. Volunteers usually get the opposite treatment since it turns out the other volunteers tend to come from a similar perspective and someone doing the hard human work is often contributing a lot more to the project than an otherwise excellent engineer.

You can of course choose your volunteer activities to be interesting to you. Open source is one such very fun activity but lo-and-behold in projects I've been involved with the human aspect is often very important and requires a similar amount of hard work. This is often truer for bigger projects/organizations than small ones.


Even if you're volunteering you still have to work towards agreed upon objectives. You wouldn't show up on a Habitat for Humanity build site an start modifying the blueprints and working on whatever you found interesting because you are volunteering and are entitled to only work on interesting projects.


Presumably you want to maximize the positive impact your volunteering has on others.


But having people working on potentially extremely useful moonshots that they are interested in for free is a huge win. I think it's really just a case of bad advice, and not all developers with 40+ years of experience are correct. In my opinion, it's better to have a motivated volunteer engaged and working on something with unknown impact that she is interested in, rather than get her to work on boring things with less impact.


of course not, humans are most often wrong about everything. Someone with experience is just that. Our perspective changes.

I started coding at 12 because everyone said it was much to hard for me. Now im old and motivate people by doing the same. At the same time its good to be reminded by others what happens if you drop one thing in favor of the other.


Predicting the future is hard. You were both right. You only have the outcome to judge the decision, not the full probability distribution.


This is so important - it's so hard to gauge what another person's mental model of a scenario is compared to yours.

As in - perhaps OP and 40+ year person had the same, accurate mental model of the probability distribution of success, but OP and 40+ had different attitudes towards risk/reward.

Or perhaps the OP happened to have a much more realistic picture of the probability of success, and 40+ was unnecessarily pessimistic.

So hard to evaluate these things, and to internalise the fact that other people don't have the information you have all the time.


Yep! If I wasn't successful, he would have been right and I can't really blame him too much for thinking it his way. The problem was particularly tricky because it combined bunches of distinctly esoteric domains (OCR, text/vector maps, image processing, fuzzy string matching).. recursively. There were no boundary lines and inconsistently sized black redaction boxes. If I hadn't worked on problems in each domain in separate projects, I doubt I would've been able to do it and he had no way of knowing my experience.


Make an API out of that. There is huge demand for it.


I needed to do this, so happy someone else made it!

A nice FOSS library for it was on HN recently, sharing is caring I guess

https://news.ycombinator.com/item?id=28680136

https://extract-table.com/

https://github.com/vegarsti/extract-table


I'm pretty sure AWS Textract does that already.

https://aws.amazon.com/textract/


I believe such an API already exists: https://pdftables.com/ (no affiliation).

Went to a presentation at a Golang meetup in Amsterdam by the guys behind this company. Seemed to know their stuff. But I have no real world experience using it.


I had a look - from their FAQ [0]:

However, some PDFs are scanned documents, or only contain images. PDFTables doesn't perform Optical Character Recognition (OCR) to turn these images into text.

To process these kinds of documents, you will need to either enable OCR in your scanning software, or run the PDF through specialist OCR software before using PDFTables.

[0] https://pdftables.com/faq


I’m in need of that right now! Would pay for it, especially if the proceeds benefitted that non-profit!


Looks this does it https://www.extracttable.com/


30+ years here, so I'm just a youngster compared to you, but yes, that seems to get lost.

My first mentor in the 80's was a jolly drunken programmer genius who enjoyed getting me to laugh at how bad my code was.

His biggest lesson was that other people need to read and use my code, not just me. It isn't enough to just hack a solution -- "Anyone CAN write code, but not everyone SHOULD write code" was his favorite quote -- but code needs "style" and "heart".

He even had a t-shirt made for me after my internship ended that had those two words and a bunch of my worst code examples printed on it. I still have it: just a bunch of MASM code. I'll Never forgot that guy.


I think this applies to not just software, but engineering in general. See, science is mostly about observing the natural phenomena. On the other hand, there are jobs that are mostly about taking care of people's needs. Engineering sits in the middle. It's a mediator. We have to understand the circumstance of both sides - nature (this could be something like hardware capacity in our case) AND people. Just taking care of one side makes you a bad engineer. You need to be technical and sympathetic at the same time.


It applies to every job not just engineering. I thought this was considered obvious.


To clarify, you're saying that you vire that that being technical and observing natural/physical phenomena are important parts of selling clothing at retail, being a novelist and working as a receptionist?

I think those are important jobs, and completely disagree with you. I'm trying to understand if those are jobs you weren't considering, or if we view each the responsibilities of those jobs very differently.


No. I'm saying that retail, much like being a novelist or a receptionist or a software programmer or indeed any job is, as the OP puts it, a "social service".

That being one of the defining charactetistics of a job.


You're saying you're agreeing with OP, but your statements contradict.

OP calls out 3 categories of jobs. Mainly natural/technical, mainly social, and those which sit in the middle and require both. Finally OP says engineering sits in the middle and requires both.

You said it's not just engineering (that requires both), but all jobs.

Both I and OP disagree with that statement.


So, which jobs are not providing a "social service"?


Car mechanics? Sure, in the end it's "social" in that another human being benefits from it, but the actual "social" aspects of the actual work are handled by someone other than the mechanic.


For many people it definitely is not - some folks get into software engineering because they have the mistaken (albeit not as mistaken as if they were going into another career like medicine!) belief they can avoid people and just deal with machines.


Approching the same experience level and fully agree.

A piece of coding art that doesn't fulfill customer needs, or requires understading of language standard minutia for fellow devs to do maintainance updates is worthless.


Yes, or in some cases even worse than useless - an active problem that requires expensive specialization to not make things an even bigger mess



The biggest mistake people in our industry make is thinking they are somehow exempt from the rules of society and business just because they can use a computer better than most people.

Heads down genius coder everyone steps around ends up fired or stuck in mid level forever, in reality. Guy who makes friends with the Customer Service department and Sales team with mediocre fixes get promoted, and in reality achieves more with his career.

Software is useless without users.


What's the quote? Knowledge can be taught. Wisdom can't be taught or told... it can only be learned through experience?

Edit: Ah, found it.

"Wisdom cannot be imparted. Wisdom that a wise man attempts to impart always sounds like foolishness to someone else ... Knowledge can be communicated, but not wisdom. One can find it, live it, do wonders through it, but one cannot communicate and teach it." - Siddhartha


The way I was told it: "Knowledge is knowing it's a one-way street. Wisdom is learning to look both ways anyway."


"Wisdom can't be taught or told... it can only be learned through experience"

I recently had the thought, that good education guides you to certain experiences to really learn the subject and not memorize some definitions.


Problem is that people learn the wrong things from their experiences, not that they lack the experiences.


Software is whatever you want it to be. I can write software that is not for other humans. That's the most fun part of software engineering to me, when you don't care about the users and just do it just for the fun of doing it.


Almost any advice is useless if you write code purely for your own enjoyment. This is why the context is so important. If you enjoy writing convoluted unmaintainable useless code then who is to stop you? Just understand most advice does not apply to your context.

Most software development advice tacitly assume you want to write code which works and is long-term maintainable (potentially by someone other than yourself) and which fulfills some purpose beyond just the fun of writing the code.


> If you enjoy writing convoluted unmaintainable useless code then who is to stop you?

Does anyone actually do this? I think it's the opposite.

I've spent truly absurd amounts of time thinking about how to do things properly. I read books, read other people's code, read programming language implementations, I just read and learn as much as I possibly can before I even start doing anything. I want my code to be right. I want it to represent the truth of how the world works.

In a professional context where people actually have deadlines, working code is usually enough to satisfy them. How complex and maintainable it is tends to be a lesser concern, to be addressed at a later time or never.


> > If you enjoy writing convoluted unmaintainable useless code then who is to stop you?

> Does anyone actually do this? I think it's the opposite.

Code style, structure, and design are more of an art than a science, so different people will have wildly different opinions (extreme examples notwithstanding).


I don't think anyone deliberate writes unmaintainable code except as a joke. Hard to maintain code happen when some other objective takes priority - performance, abstractions, architectural purity, DRY or whatever else a developer might enjoy focusing on.

The most maintainable code tend to be the least clever. But developers enjoy being clever, so without any outside pressure to deliver maintainable code, developers will tend towards less maintainable code.


And, as the article says, your advice and the GP’s are contextual.

If you’re interested in creating software that makes people happy, solves their problems, gets cherished and recommended - then work hard to not lose sight of that goal in the thick of crafting a massive code edifice.

If you’re interested in pushing the limits of your own creativity, and building a technical structure capable of handling domain complexity with ruthless efficiency - then sure, don’t worry too much about how it looks, how it reads, or how others respond to it.

If you’re lucky, you might get to do both in the same body of code. But not likely.


Even if YOU are the only user, you're still writing software for a human.

Hopefully.


With that argument you could say that everything humans ever did was for humans. So either it is a platitude or it is wrong.


You could say that, but my cat thinks you'd be wrong.

However, I'm yet to see my cat boot up the computer.


Ultimately pets are for humans, whatever you do for your cat you do for humans. The same logic works there.


With cats it's the other way round: the humans for cats.


And from a computers perspective all human work is ultimately for computers. Either making them or feeding them data. The purpose of the cat is to generate cat pictures for the computer etc.


My cat would often turn the computer on or the tv off, and I swear he did it on purpose because that's when he was complaining he didn't got enough attention.


My cat has turned off my computer on me - does that count?


You’re writing software for all of your future selves.

http://www.catb.org/~esr/writings/unix-koans/prodigy.html


Thank you for posting this. I feel understood.


But then we can also go the other way, and forget how crazy and diverse humans are. So you will still, eventually, end up facing the same challenge, framed differently.


Well, you could create software as art. Basically to create it for the fun of creating it, not to use it.

But yeah, the end result is useless then, and can be thrown out.


Or, like some art, of variable degrees of folks caring about it based on other interesting properties - and made for some purpose other than maintainability.

Demoscene, obfuscated coding contests, etc. seem to fall under that category.

Uselessness in the eye of the beholder or something like that.


But in those cases you are creating for other people. The point was made about software that didn't have any use for any people.

In those cases, only the creation itself has a use, not the end result. By definition.


Don't forget to write for future you. They'd appreciate some consideration as well. Mostly along the lines of "wtf does this module do?"


The best one for me was documentation to complicated for me - by me.


You seem to have a complicated relationship with your past self. I foresee further trouble in your future. Its best if you take a torch or you'll be eaten by a grue.


> when you don't care about the users and just do it just for the fun of doing it

Yes!! That makes me so happy.


So you write code in machine language? Or are you writing in a language that tries to be readable by English speaking humans?


Or they write it for themself and not _other_ humans.


Your future self can be seen as “other” humans given a long enough time frame.

Anybody who has looked at their own code done more than 5 years ago can surely attest.


5 years is optimistic. A lunch break can be enough.


Can't agree with this enough. Sometimes it is directly for other humans (a GUI), other times it is indirectly related (an ETL job that converts data into a form that can be easily used to drive a recommendation engine which provides recommendations ... to people).

This is tied into asking "why", another one of the author's points. At the end of the day, if you dig deep enough, the why will be related to human happiness.

Bonus! If you keep this in mind, you'll also gain perspective. While you don't want to live at 30k feet all the time, periodically gaining high level perspective of the problem you are solving has been, for me, one of the joys of software development. (Not the only one, but definitely a significant one.) Hopefully it is that way for you too.


> At the end of the day, if you dig deep enough, the why will be related to human happiness.

At one of my jobs, one of my tasks was to take client HR feeds and load them into downstream systems for travel management. On your second day of employment at your company, you should have a profile in our system which was a portal that displayed all travel policies and a profile in whatever booking tool your company used.

We knew who your manager was so approval emails went out automatically. We knew what corporate card was assigned to you, so you never had to deal with that. We knew what preferred vendors your company had agreements with etc

All I was doing was data manipulation and loading on a scheduled or triggered basis. But ultimately it allowed new hires in a new environment to have an easy time booking their trip for mandatory training.

Any time our process failed, you had a traveler stressed out that they wouldn’t be able to book the trip in time or have to outlay money and reimburse later or get stuck at a distant airport.


I think software is human expression. It can be a social good or a business driver. But it does not have to be. It can have no users, no IO or never run on a computer and still encode deep meaning.

Does it need to be social to be useful? That is a value system.

Many here communicate (beautiful) value systems, and that's great! But ideas and software can transcend those.


35y+ here, i just sent him something along:

"software is communication, made by people, for people"

(which is more or less what you say :)

With all the consequences. Most people, on either side, don't get it. Ever.


> Software is a social service. Its for other humans.

I deeply disagree with this Calvinist utilitarian sentiment. Its akin to saying sex is for making babies. Maybe its an academic thing - When I went to grad school for CS, on Day 1 my Algorithms Professor paraphrased Perlis's famous quote on the blackboard - "Shaft the paying customer!"

You can find the whole quote on the first page of SICP[1], or elsewhere[2]. imho its a highly toxic sentiment to think that whatever a programmer does is for other humans. Software as a Social Service...SAAS :)

imho the best software is written to scratch a personal itch. Not to appease this customer. Not for other humans. Not as a social service. In fact all the people I deeply admire in the software world - Arthur Whitney, Kenneth Iverson, Mattis & Kimball, Perlis, Dijkstra, hell even Linus, are generally characterized as egotistical assholes in the public space who really don't give a flying fuck about social service & humans but care deeply about the software they created for their own selfish reasons.

Mattis is quite explicit about this - "You should understand that the GIMP and GTK weren't written to fill holes in the software available under the GPL...GIMP was started because I wanted to make a Web page. GTK was started because I was dissatisfied with Motif...These are purely selfish reasons. That is probably why the projects...eventually succeeded. I find it much more difficult to work on something for selfless reasons."

Perlis - "I hope we don’t become missionaries. Don’t feel as if you’re Bible salesmen. The world has too many of those already. What you know about computing other people will learn."

otoh the people I deeply detest in software (too numerous to name) are generally these do-gooder types who write software to save the world & provide social service, employment to the masses, add "value" insert-marketing-speak-here etc...

I'm ok with the hypocrisy in pretending to care about software as a social service because I need to put food on the table like any other programmer on the market, but deep inside, I write code only for myself. I think a big fraction of developers are like that. There's no harm in saying it out loud.

[1]https://cloudflare-ipfs.com/ipfs/QmQ3C4ooSCmBMuK7mKq4sqVAfGq...

[2]https://www.goodreads.com/quotes/405620-i-think-that-it-s-ex...


> imho the best software is written to scratch a personal itch. Not to appease this customer. Not for other humans.

This statement shows you partially understand, but don't understand the why. You recognize that people working on software for things they truly care about can write better more successful software, but you miss the final step of why that software is more successful.

The reason why Linus can write such great software for software engineers is because he is a software engineer. Fundamentally the software you love is successful for other people, it is for other people and because your idols are one of those people part of that group, they understand it as well as anyone.

Linux was made for passionate hobbyist programmers by a passionate hobbyist programmer. And because it is made for those people, and met their needs perfectly is why it caught on. The reason it met their needs is because Linus understood their needs, because he shared them.

That's the key piece - that great software is written by completely meeting users needs. The easiest way to understand and meet other people's needs is by sharing them. That's the final step of it.

Fundamentally software becomes successful by meeting other people's needs. Anything else that doesn't, you've never heard of.


> imho the best software is written to [...]

What do you mean by "best"? If it is supposed to be judged by the original author of the software alone, your opinion does not matter. If you think your opinion of software written by others matters, then BAM, you've acknowledged what you set out to refute, i.e. Software is written for (or at least its quality can be judged by) other humans. (Unless you're actually a GPT-3 bot in disguise, in which case you win :D)

What you might have shown is that software not written for others can still be great in the eyes of other people, but even that is somewhat nuanced. IIRC one of Linus' egotistical outbursts was triggered by a kernel dev intentionally breaking user-space compatibility. At least in this case Linus' example doesn't support your claims.

I also don't see why "software is written for other humans" necessarily snuffs the fun or interesting aspects out of it. There certainly are large number of un-fun software that serves a commercial purpose, but it doesn't mean that fun software has to be anti-social. Even entries submitted to IOCCC (purposely obfuscated C code written purely for fun) sometimes lead to useful stuff (Fabrice Bellard's work).


> provide social service, employment to the masses,

If I want the computer to do XYZ, and I can provide an XYZ service to other people? They're paying me to do my bug testing, and I get to feel good about it.

If you're providing something that you think is a really good service, but not for people like you, and not for somebody specific you know either, it's probably going to be rubbish.


So if Linus works on Linux for his own selfish reasons, howcome Linux isn't a one-person effort that nobody else is using? And why did they pick the GPL?

It sounds to me like you're describing bad social behavior but generally altruistic motivations with good social behavior but non-altruistic motivations, and you prefer the former over the latter. Sure, thats fine.


you can replace the word "software" with basically any other professional work and that is still the same. I don't know what you can learn from the fact that it's a social service.


I've met a lot of people who are writing code to satisfy requirements and collect a paycheck. They're good people, but just don't automatically think about the end user. They stop when the requirements are met, instead of when the user will be happy.

That's what they're supposed to learn from that, IMO.


> They stop when the requirements are met, instead of when the user will be happy.

that's because they are doing software "for other humans" - aka, their manager and PM, who gave them the requirements.

So the problem is not the software engineer, but the person who creates those requirements to be fulfilled.


I think what the parent may have been complaining about is essentially myopia in interpreting things - ‘well, this technically checks the box of what they ask for’ while willingly avoiding thinking about the larger context of what is being attempted or trying to understand requirements that don’t make much sense.

Don’t get me wrong - it has it’s place, and if everyone always tried to understand everything, there are a lot of organizations and situations it would be crushing - but it’s also very frustrating in many situations for those who want high quality products.

It’s the ‘not my job’ syndrome, essentially.


> I think what the parent may have been complaining about is essentially myopia in interpreting things - ‘well, this technically checks the box of what they ask for’ while willingly avoiding thinking about the larger context of what is being attempted or trying to understand requirements that don’t make much sense.

I think what your post’s parent was pointing out is that in lots of environments, such myopia is just an engineers job definition, for which they will be punished if they stray. Interpreting end-user needs is someone else's job.


I think we just violently agreed, and even repeated the same last line?


I'm not asking that develop to go against the requirements. But it's often possible to satisfy requirements without satisfying the user, even though it's actually possible to do both.


Some organizations are structured such that it is difficult for an engineer to do anything else. An engineer doesn't always have access to the end user, unfortunately.


Well, all economy is human economy, so yeah .. okay.

You can learn from the fact that its a social service by actively NOT resisting the truth of this fact.

Incorporate it into your thinking with every commit you make and you will become a better programmer over time.

(Corollary: those developers who forget this fact, make shitty software...)


Everyone agrees that software is to serve humans. What they disagree about is how to best make software that serves humans.

For example, lets say you write an API that translates text. Should you assume the text the human sent in is correct and return an error? That way you can make better translations when they send the right data. Or should you try to be helpful and automatically fix spelling errors you think you've found in order to make the API more human friendly? Would make it easier but reduce accuracy.

You seem to be in the second camp, reduce power of API and make them easier to use. But lots of people think that the best way to serve humans is to make more powerful and strict API's.


Either option is fine, as long as your user agrees.


You have more than one user. Some of them will want power, other will want ease of use. You can't satisfy everyone without making multiple products.


More than that, there may be a whole stack of software components between your API and your users. In this sense, quite a lot of software is written for computers and not other humans (or, your users are other software devs).

This is to say, "all software is written for humans" is too general to be useful - the important issues are all in the details.


Probably something to do with the computer not caring about that. If you constantly divide your time between someone that’s 100% logical, and someone that generally isn’t, you’re bound to get confused.


Gonna expand on this just a bit. Software isn't a product or a service. It's a tool. No end user cares what your stack looks like, they just want to click a button that solves their problem.

Nothing between "click button" and "problem solved" is your user's problem, they're all yours.


Very few recent programs i've seen were socially useful. Some might find comedy in this but the app my current gig uses:

- is un ergonomic and redundant (typing the same thing over and over, no keyboard shortcut jquery era procedural code)

- the overall design is useless, it produces libreoffice templates that takes ages to be badly filled

- secretaries go faster using fucking paper and filling everything by hand

- the application has all the data at hand but nobody has access to stats or complex queries, people have to also write down stats with stick marks on paper so the hierarchy knows what's going on

alas


What do I do with this, though?

I think I get what it means but how do I act on it?


Always keep the human in mind, whatever software you are righting. Its turtles all the way up to the human.


Is this meant to be "code is for the reader, not the compiler", or "people are the ultimate end users of your software"?


20+ years and I concur.

Improvements in my "soft skills" have carried me further than any technical learning.


A corollary-ish observation of my own:

   * If coders could write useful documentation (starting w/inline comments) they probably wouldn't be coders.


What would they be instead?


Communicators. (Writers, marketers, teachers, ...)


Then they'd make less money.

Why would they choose less money

(Unless of course if they like those other jobs better)


They would be what then?


> Incredibly, it doesn't matter how educated the developer, they still seem to have to learn this lesson themselves, over and over, until it sinks in...

That's probably because many devs were socially isolated when growing up. (How do you think they got so much time spent tinkering with computers?)

Also, it is generally hard to imagine yourself in other's shoes. Example: imagine trying to use your UI but with a 60-year old vision instead of that of a 20-yo. Example: imagine having no formal address or no citizenship (stateless).


I fully agree with this.


another 40+ here w0rd!


Isn’t this true of basically any job?


Sure, but that doesn't make it any less useful as a fact - especially when you are working with other developers who choose to try to ignore/avoid it as a maxim.

Please don't tell me you've never met such a developer ..


I am such a developer.


See you in 30+ years! :P


I reached quite the opposite conclusion: the purpose of software is to make a computer do work. Then again, I purposely refrain from writing end-user software and focus on backend automation. It is a deliberate choice.


Do you keep your code human readable? Why?


Just playing devil's advocate:

So I or someone else can continue to effectively make the computer do work.


So it's a social act to keep the computer running.


For whom does the computer do work?


Other computers


I see you work in finance. Where the humans are just office decoration.


It may be computers all the way down, but at the bottom there is a human. Somewhere. Poor thing.


Unless it’s consumed by an AI. Which I don’t fully understand but am comfortable assuming that the AI might be able to ‘teach’ itself to consume an API.


> “if they ask about time off in the first interview then they are never going to be there!”

The fact that this attitude is common scares me when I'm doing interviews.

Time off is incredibly important to me. What's the use of making a great income if you can't get the time off to enjoy it?

The culture about the use of PTO varies wildly between companies. A friend of mine worked somewhere that supposedly gave 20 days PTO per year, but trying to actually use more than a single day at a time was always met with denials, and even if you did take a Friday off, you were expected to work 10 hours/day the other 4 days of that week to make up for it.

So yeah, when I'm interviewing, I want to know how much time people are taking off, but I don't want the interviewer to think I'm lazy and will be trying to avoid work as much as possible.


Your quote of the article made me think I was going to hate the advice, but then I realized you quoted it out of context, here's the full quote:

> People might claim they have “signals” for these things… “if they ask about time off in the first interview then they are never going to be there!” But these are all bullshit. If you’re using signals like these you’re just guessing and turning away good candidates


Ooof...re-reading my comment, I can certainly see your interpretation.

It definitely was not my intent to paint the author of the article as the person who made that quote.

Unfortunately, I can't edit my comment now.


I was going to not read the whole thing based on your comment, but now I'm reassured


I also regularly give a quick peek to the comments sections before reading the article in order to figure out whether I should bother reading.

Sometimes it works, sometimes it doesn't


I was also put off from the article by the quote, but that's on me, not you. The article was great and I agree with everything in it.


Maybe we should all ask this question in our interviews so we can avoid these shitty teams that way!


I like to ask if their health insurance covers drug rehab. That goes over well.


Unfortunately, there are too many different ways to be shitty, so while it would filter out a few, a lot of shitty teams wouldn't be detected by that particular question.


So you're saying we need more questions


That’s a pretty huge distinction. Can’t believe he misrepresented the author like that.


If you re-read the comment with the assumption that they were not trying to (mis)represent the author, it still makes sense, so I don't think that was the intention.



That was not my intention. I was operating under the assumption that anybody in the comment section had read the article first, since then it would have been known that I wasn't quoting the author, I was quoting something the author quoted.


It's the correct assumption to be made for the comments section to the article you quoted from.


Reading the comments to decide if you want to read the article is also a valid workflow. Although anyone doing that (me included) isn't entitled to complain about quotes not having enough context.


I always look at the HN comments first to see if the article is worth reading, and probably other people do as well. HN loads quickly, doesn't have a paywall/cookie pop-up so it's just a better experience to look here first, and often the comments here are better value anyway.


It's easy to write something with an assumed context that is easily misinterpreted by readers without that context. I think it's unreasonable to interpret that as 'misrepresenting' something unless you can show that the writer knew their audience wouldn't have that context.


He didn't misrepresent or disagree with the author. He added extra commentary on something the author brought up.


The lack of context reltated to what the author wrote is a sin of omission -- because anyone reading a top-level comment that begins with a quote (like this) is, to a first approximation, going to imagine the commenter is responding to the position of the author.


I think that’s a good reason to read the linked article before drawing conclusions about its contents from discussion threads. Having read the article first, I understood immediately that the comment was not misrepresenting anything from the article, and that their commentary bolsters the point made there.

And you don’t necessarily have to read the article before comments. I often don’t! But when I encounter something in comments which seems incongruous with what I’d expect or hope to find in the article, that’s a good prompt to go ahead and read it to gain context.


A sin or lie by omission requires intent, and the OP stated their intent was not to misrepresent the author.


That is not how quotation marks are designed to work.

The words offered up as a quote are meant to represent the views of the person being quoted. In this instance that is clearly not the case.

This is a perfect example of how quotes can be used to misrepresented a view.


To be fair, they used `>` to quote the article, and then included the article's `"` to indicate that the article itself quoted someone else.


Vote with the down arrow. Why is it the first comment in this thread eden is complete nonsense?


I had the same thought process.


As I once told a boss who tried to cancel my already approved vacation in a former job/company, you can't stop me from going. You can only stop me from coming back. Let me know which you prefer. (I really needed that vacation and I was done with bullshit.)


I had a manager who tried to cancel my vacation the day I was at the airport for the flight. I had given advance notice, and they agreed to it, especially when my vacation days have been maxed out for months. Obviously I went for it anyway, and left the team as soon as I come back.


I recently had a job offer taken away for other atupid reasons that we discussed, but conveniently after I brought up how I should handle billing for time away. Maybe I dodged a bullet.


Well put. I'm guessing there were no consequences, other than to lower your already low opinion of the company?


No consequences. I think my opinion truly hit the gutter when I got that boss from hell :).


Usually I am more inclined to hire someone who discusses time off during an interview. It shows that they think about their life-work balance.

I do not need heroes, I need reliable folks who do not burn themselves out.

Or to put it in a cliche... I need people who work to live rather then live to work.


and also importantly people who have family to take care of. If someone comes to me and asks for time off because they have children or partners or parents to take care off and they take that seriously that certainly deserves some respect

would make a better impression on me than someone showing up with a Patrick Bateman business card in hand


Nobody should have to even give a reason for a time off request if it's part of your work agreement.


Sure thing. But I always give reasons. That stuff builds trust.

Even silly things like "hey I'm tired and feeling down, gonna take a couple of days off" builds a lot of rapport.

And unless you're dealing with a huge asshole of a boss, it's never a problem. And if it is, you'd get warned so you can leave faster.


If I ask for time off to sit on my arse all day and play games what would you say?


Who are you, and how did you get into my kitchen?


… hopefully you would be told yes. Paid time off is a basic right in most countries.


plenty of people have families and abuse the crap out of them, and people without families that want one still need to socialize enough to meet people to eventually have a family

book != cover


We interviewed someone a while back and she said (without being asked - asking questions on this line is illegal) she was prepared to leave her husband and kids to move here. It didn't affect our results, but we all agreed in the discussion after that was a negative sign if we were allowed to consider it. She probably would have been good, I hope her search went well.


If you say that during your interview unasked, what kind of company are you looking for?…


> It didn't affect our results

I laughed - HR and legal approved this comment?


This is especially true if the company uses "unlimited"/not-tracked/etc. time. Otherwise, unless you know someone at the place (and even then it can vary by group), you're left with making assumptions about norms that may not be accurate.

Personally, I've never not used all my PTO in a given year and would consider being unable to do so a show stopper.


I've heard the "unlimited PTO" policy referred to jokingly as the "no PTO policy" at some shops.

Most companies are great about it though and encourage PTO.


I once asked hr from a position advertising "unlimited PTO" what was the average of PTO days in the team. She panicked a little bit


Great question.


Unlimited just means they don’t have to pay out when you quit or get laid off, doesn’t it?


Yes, but it also doesn't give any indication of norms around the amount of time off people take.

Expectations may differ from how much time is in a traditional PTO bank but at least in general, it's OK to take accrued time off barring special circumstances.


I worked at a place that gave us 2 weeks and then took an act of Congress and months of social engineering to take even a day.

We got bought out and the new overlords announced they were going to give us five weeks of vacation. There was actual laughter in the room. We can't even use 2 weeks, what's 5 gonna do for us?


In Norway you're required by law to take four weeks and a day vacation every year. Almost everyone has five weeks vacation time in total. Both you and your employer can demand that three of those are continuous during summer, and most of the country shuts down three weeks in July.


Wonder what did you guys produce that required all hands on deck at all time non-stop?


We really need a new standard. Unlimited PTO Min 20 days/year. If you don’t put a number then it’s assumed to be 0


In Norway you're required by law to take four weeks and a day vacation every year. Almost everyone has five weeks vacation time in total. Both you and your employer can demand that three of those are continuous during summer, and most of the country shuts down three weeks in July.


In Australia it is 4 weeks minimum (and 10 days for sick/carers leave). The leave accumulates if you don't take and have to be paid out as per your finally pay if you leave the company. Since it is a liability on balance sheet most companies will demand you to take leave if you have accumulated over 20 days. You can also ask to cash out any leave more than 20 days.


I live in a state where that's not required, so it doesn't happen anyways. ¯\_(ツ)_/¯

When I put in my two-weeks at my last job, my boss said that if I can get all my work transferred in only a couple days (I did, since I basically had almost no work, hence my search for a new job), then I could just fill the rest of my two-week notice time with my remaining PTO. No reason to spend two weeks pretending to work at my computer.


Yeap, PTO is a liability on the books and unlimited PTO is a way to get rid of it.


Bingo.


I really like the policy of "minimum mandatory time off" some companies have. That makes a big statement about where their priorities are in terms of care for their employees' well-being.


The company I'm at effectively has that as part of their unlimited PTO policy, though the timing is company-mandated, being the first week of August and the week between Christmas and New Years, which is a week so many people are likely to take off anyways, it just makes things easier to make everyone take it off.

Going into the week off in August, I wasn't sure how seriously they took it, but sure enough, I didn't get a single e-mail that week other than weekly reports from automated tools. I even checked Slack that Friday, and there wasn't a single message except for the channel where people post pictures of fun stuff they do over the weekend.

It was pretty nice.


I pretty much hate policies that require you to take PTO at specific times. They're almost never the times I would choose to take on my own and are often at times it's difficult to combine into a longer trip.


Having everybody take the time off can be good, but it doesn't achieve the goal of making sure all processes can go as usual while any individual isn't there, as mentioned in your peer comment about banks.


Banks tend to have this policy because there are a lot of ways to steel in ways that you can cover your tracks. But most of those ways require regular effort to cover your tracks, so if you are locked out of the office for at least two weeks someone is likely to notice. Note that this is two continuous business weeks. Nothing happens over Christmas so that doesn't count.


I had a manager who couldn't let anything happen without her input. She went on vacation and participated in everything via Slack for two weeks. Making her disconnect might have helped more people realize how much she was ... "translating" requirements and work status between her reports and other teams.


In many jurisdictions, there's a statutory minimum amount of annual leave; you can take less but then the difference must be paid in lieu. (Versus if you give 30d, 18d is minimum, and employee takes 20d, then you don't have to do anything. Obviously could have a company policy of paying it if you want.)

So, a more cynical take on mandatory time off, and something that absolutely does happen, is that they'd just rather not have the work than have to pay extra for it.

Also common is not rolling over into the next year, so use it or lose it.


In Norway you're required by law to take four weeks and a day vacation every year. Almost everyone has five weeks vacation time in total. Both you and your employer can demand that three of those are continuous during summer, and most of the country shuts down three weeks in July.


The author's company avoids that "unlimited PTO" pitfall in their job listings by describing the benefit as:

> generous time off


That doesn't necessarily mean it's "unlimited". It could be that you get eight weeks and they just don't say so.


I think most people understand that "unlimited" does not mean you can take half the year off. It means there is no hard limit and it is up to a discussion between you and your manager. 8 weeks is pretty generous.


I imagine it's really hard for employers to balance that, though.

A good employer wants employees to take the time off they need without worrying about running out of PTO to do the stuff they want. They don't want an employee to ever have to think "Shit, if I take that day off for a dentist appointment, then I won't have enough PTO for that weeklong trip to Hawaii!"

But if you try to avoid this scenario by being extremely generous and declare an explicit 8-week PTO policy, then you will have people using 6-8 weeks PTO. Even as someone that strongly values work-life balance and PTO, 8 weeks is pretty nuts. If everyone took 8 weeks PTO every year, that would be pretty costly and could significantly impact productivity. 8 weeks is 1/6th of the year! It would cause chaos with people frequently coming in and out of the office.

So I think an unlimited policy sounds good, but expectations have to be set. Personally, I'd like to see it paired with a 10-day MINIMUM policy, with at least one full week off.


I guess to someone in the US, 8 weeks sounds like a lot. But, especially if you consider holidays and sick time, 6-8 weeks total over the course of a year doesn't seem unreasonable. I've been in that range for total nonweekend days off for much of my recent career.


It depends a lot on the company in the US.

If we're including holidays, I've seen plenty of companies that do 4 weeks PTO + 8-9 holidays which is just shy of 6 weeks, and there some that do 5-6 weeks PTO after you've been there for a number of years.

But there are also ones where you basically get no PTO. Presumably (hopefully?) you get paid more money to work at these places, but I've never found them worth investigating.


I don't include holidays in that total.


Yes, at my work the manager made it clear he expects people to take time off -- often getting then to take the minimum is a struggle.


If the company thinks they have a good story around PTO they will sell it in the first interview. As an interviewee it's very important to me and I will definitely ask questions, but later in the process when I have more leverage. I don't think someone asking in the first interview is lazy, just perhaps naive. They'd be better to ask about work/life balance and expectations in general and then probe what the interviewer answers back.


At my company you get one interview, if you get a second interview it is because we liked you but someone else was better and passed your resume on to a different team. One thing we do is take every candidate to lunch (COVID has changed this of course) with someone who doesn't have input into if you are hired: so feel free to ask those questions that you are not sure about.

Having done a few interviews, nobody knows what questions to ask.


> lunch ... with someone who doesn't have input

I think part of this could be that they don't know whether to believe that you truly have no input.

When I was an interviewee, my lunch escort told me they didn't, and I was pretty sure it wasn't a devious trick to get me to let my guard down, but I had no way of knowing for sure. I also thought, if there isn't a formal process, maybe if I say something too dumb or wrong, they would still mention it to someone. So I stuck to really superficial topics.

Then I got hired and later served as a lunch escort. Now knowing the process and knowing there truly is no input, I tried to convince the interviewee, and he didn't seem to believe me just like I didn't when I was in his shoes.


Maybe better than a single 'lunch escort' would be a group of friends, or a team the candidate isn't being considered for or something.

So that there's some joviality (or not! Something to get an impression of) without putting such one on one pressure on the candidate so that it still feels like an interview. Candidate can just sit and eat even and enjoy others' conversation.


Yeah, in principle it's a great idea. Realistically no rational candidate would believe that the lunch escort has no input.


Even if they have "no input", if the interviewee did or said something really extreme it would be reported back.


Maybe, but taking the time to talk to hr means it would be awful before someone would go through the effort.


I always leave time off conversations to the offer negotiation stage when I make it past the interview stage. I want my time off in writing and if it's not enough I'll ask for much more money before I accept.


Correct. It is in the interest of the company to sell you on all the perks and they should do that up front.

It is in your interest to view PTO as any other form of compensation and to make those compensation demands after you have demonstrated how valuable you are to the company via the interview process. You don't start negotiating salaries before the first interview, because that's a bad strategy.


How often do people really negotiate PTO? I have been flatly refused the times I have asked about it. It seems to be much more difficult than negotiating salary or other comp. Companies handle those individually so they are used to negotiating on them. PTO is often handled at a departmental or company level and companies can be hesitant to make exceptions for an individual employee.


I have seen salary bumps offered when additional PTO is requested, which can be calculated into x days of unpaid leave.


Spot on. I always ALWAYS ask about time off during interviews. But I don't ask the manager because I found they always try to stretch the truth or reframe shit.

I just ask the individual contributors how much PTO they've taken in the past 12 months. It's more or less an open question, doesn't necessarily means I'm interested in taking too much PTO. You'd be surprised of how honest people are. I had interviewees even start venting about burnout. Someone from an e-commerce company (not Amazon) told me he's gonna take a month off as he took 0 vacation days for the past 1.5 years (!!!). He admitted he's probably going to get in trouble but he doesn't care anymore.


You should ask about vacation and sick leave both, not generic PTO. The two can be very different, or the same thing.

I get vacation that I'm required to take every year. I have unlimited sick leave - but I actually have to be sick to use it (going to the dentist for a regular checkup counts as sick though)


Someone who replies with that kind of hyperbole is just saying they don’t want anyone who is going to take more than a bare minimum of PTO.

If you’re dealing with a reasonable person, you should be able to preface the question by explaining how having sufficient time off helps you do your best work and avoid burnout, and that you want to clarify expectations up front to make sure that you and the company are an ideal match.

It’s also of course a bit less risky to bring up this sort of thing a bit later in the interview process when you’ve built a bit of a rapport with the interviewer and ideally demonstrated your value somewhat.


> If you’re dealing with a reasonable person, you should be able to preface the question by explaining how having sufficient time off helps you do your best work and avoid burnout

If you are dealing with a reasonable person, hopefully you want have to explain any of that.


Have you ever had a date where the first thing someone talks about is something like having babies, or going on and on about their ex, or they want to know how much you make in the first 15 minutes? It is not a pleasant feeling, and makes it pretty clear what their priorities are (and aren’t). Namely that having some idea who YOU are and if they like you doesn’t really matter much.

If someone starts the interview process talking about about the vacation amounts (and not much else), that isn’t that different. Chances are at that point they don’t know folks on the team, and vice versa, they don’t know about the company (much), or what the job would likely look like, it may entail, or really much of anything.

It’s just weird, and a bit concerning, in the same way that someone might ask about perks and pay without even trying to understand any of those factors too. Because those factors matter too, a lot.

I’m not saying asking about vacation is a round file thing - rather I have seen, and can definitely imagine, scenarios where it is or would be a pretty major red flag.

If part of the general background comp discussion after someone has spent some effort figuring things out, or as part of the initial listing? Of course, that’s not weird at all. And giving a pay range for a role is of course necessary to avoid people wasting their time.

So ‘it depends’


Interview is not a date. Its a formal meeting where parties are trying to acheive something concrete. Hire a good employee, find a good job.

If someone starts off with asking about essential thing that is important factor for them it means that its a dealbreaker issue for them.

Whats the point of interview if they know there is no flexi time, and you only look for flexitime jobs??

Its actually a matter-of-fact approach that goes straight into details and saves everyone time. Given it was properly delivered I would be more inclined to hire engineer like that.


If properly delivered? Sure. As many folks seem to be indicating in these threads, as the primary or even sole topic of interest to them?

Would you then consider that a plus?


They know what they want, they do go around the bush doing pleasantries and waiting for the script to get to the place where they can ask the question they wanted to ask in the first place.

To me person like that will be first to raise a hand when something is not right in the project. It might also be a good indication of goal oriented thinking, they know whats important and prioritize to achieve goal


As long as they’re not just talking about nothing but what they want, then they aren’t the problematic cases I was referring to.

The few times I’ve had someone do that, the last thing those folks did was (as one put it) “look for problems” by raising project issues or really doing anything but the bare minimum. A bare minimum that had to be clearly articulated several times to the several people I’ve run across - who one then specifically asked EXACTLY what I meant by ‘keep the system running’, so they could exclude a bunch of long term maintenance work from that minimum shrug

IMO, if someone is curious and cares about what they are working on, it shows, and we would never even have this discussion about them - even if they did ask about EXACTLY what the vacation policy was.


Sure, I've just found that it can be helpful to clarify intent is all, especially when you're dealing with someone you've just met - e.g. maybe the interviewer is mostly reasonable, but is scarred from past negative experiences with colleagues who were legitimately lazy. This phrasing might help such a person understand where you're coming from a bit more easily.


If you need to clarify intent for something as fundamental as work/life balance, wouldn’t that be (at best) a yellow flag?


This needs to not be a taboo. It’s very important how many days I get off, how many hours I’m expected to work and if I’m expected to work nights and weekends. Those are like my top 3 concerns, I don’t really care about your snacks or vision or stack to be honest.


But they do care about those things - a lot. And since being employed requires both parties are happy with the deal, it is something worth considering that obviously not caring about the things they care about could cause them concern.

It goes both ways of course - them not caring about your well-being is obviously just a big a red flag for a candidate.


If you are not dealing with a reasonable person you don't want to work there anyway.


I remember a friend who wanted to work for apple. He wanted to take time off before he started.

They said "hey, we shutdown anyway during the holidays you can take it then, just start now"

and of course, did he get to take that time off? NO.


Think about it the other way, if they reject a candidate for asking, it's their way of saying "The PTO situation is terrible here".


Yeah, if I ever discovered that a potential employer took this view of PTO then I wouldn't want to work there anyway. Huge red flag.


Small point: The author of the article does NOT have this attitude. He's calling it out as a bullshit attitude...FWIW


Whoops! I should have read the article. Edited.


I'm hearing answers about why they would be either inclined to or not inclined to hire based on that question. My opinion is that it's just a question. Answer it and move on. Don't read for patterns where they don't exist. This also reflects lot of unconscious biases we might be nurturing by having strong opinions about these.


And then there are cases where you can take PTO, but you end up having to work during that time anyway.


It seems you live in US. In other parts of the world it's perfectly normal to have time off and benefit from it. But as a compensation wages are higher.

However, I prefer having some free time for myself than accumulate a large amount of money.


Agree. If I were the interviewer I would probably do the same. Asking about how people spend their life can also reveal a lot about their personality as well.


Asking about how people spend their life is often illegal to ask. If you don't know the local laws only ask job related questions. This is why my company gives me a script of questions I'm allowed to ask - to get the conversation started on legal topics in ways that are unlikely to stray into illegal areas. (more than once I've had illegal information given to me - but I didn't ask so that is okay)

Illegal information isn't anything that will affect how someone does the job in general. You learn about personality, but I hope you can deal with those personalities anyway.


Thank God I was born in a poor socialist country and I don't have to think about obvious stuff like my days off

Edit: sorry if that sounded offending but I can't wrap my head around the fact that people in US have problems of this kind


I think time off is very important, but you don't need to ask it during the interviews. Just wait until they give an offer and then ask for what you want.


so spend how much of my time and theirs going through the entire interview process to find out the answer to a trivial question that could make or break any final decision?

....Or...and hear me out here...fuck that noise.

if people are making snap judgement about candidates from asking a basic company culture/hr question during the interview question, then the candidate winds up having dodged a bullet one way or the other.


Nah, just like salary, I'm getting a ball park range on that topic before bothering to come into the office for an interview. Otherwise, you're wasting other people's time and your own.


Maybe it’s just where I’m at in my career and priorities, but I’m way more inclined to put work/life balance first and leave comp discussion for negotiation.

I make plenty. I could make more, sure. Could I be more aggressive at making more? Absolutely. But I care far more about being happy where I work. And anyone trying to hire me knows or should know the market well enough they’re not going to make an absurdly lowball offer.


agree: if you don't get the job it doesn't matter, and until they offer you the job you don't have any leverage.


This is so strange. I have 40 hrs /week (registered, if I work over time I can take days off to compensate for) and 30 days of vacation per year (on doctor's note sick days are not taken from the vacation-days account).

It's plenty of time for my employer to extract value from me. If the org wants me to work more, they can make me be in meetings less.


The context is key. First interview.

The issue isn’t taking time off, it’s that the prospective employee’s head is up their proverbial ass. First interview is propspecting. If you were selling a product, if the customer is asking about the return policy before even selecting an option, it’s a similar signal.

When you’re in a subsequent interview talking about the benefit plan, salary, etc, that’s where that sort of question is appropriate - you’re finalizing the deal.


I find this line of thinking incredibly bizarre. If PTO is important to the candidate, why should they waste their time spending hours interviewing only to find out that the work-life balance in this position isn't going to work for them? To you that's having their head up their ass? God that's strange to me. I'm sure glad I don't work for people who make sweeping judgements like that.


You’re looking for a job. You have 10 minutes to ask questions that make you stand out, to a individual who probably cannot answer the question.

You do you.


Employment is a partnership, not servitude. That means the employer needs to convince the employee to work for them. I'm fine being rejected by a place that will treat me like shit.


Isn’t a partnership supposed to be mutual?

You seem to think that it should be one sided, with them doing all the selling/figuring though, which seems to be pretty problematic in other ways.

For some folks, at some times, that can certainly work. But it sounds like you want them to be in servitude to you, not an actual partnership.


That's so spot on. Your Q&A session is your chance to learn something real and convey what you care about. A good question might me like "what's the hardest thing you had to do this year" or "how did you make decisions in cases of disagreement?" or something like that. It shows you're thinking about the job and whether you're a right fit.

High quality questions say something about you. Low quality questions do too. Would you ever hire someone whose question is like "so, do a lot of hotties work here?" Probably not, because ... what kind of person is this? Similarly, if the person who doesn't have an offer and doesn't know much about the role is hyper-focused on their time-off, something is off too. PTO is important, it's just a thing you need to be thinking about once you have an offer and think the job is otherwise a match, not as like the #1 question.


Different priorities I guess. Personally I’m exchanging my time for money and would like to know what kind of a deal I’m getting. I’m too old for all the fluff bullshit.

Yes yes yes I’m sure you’re changing the world and creating super exciting CRUD


> Different priorities I guess. Personally I’m exchanging my time for money and would like to know what kind of a deal I’m getting. I’m too old for all the fluff bullshit.... Yes yes yes I’m sure you’re changing the world and creating super exciting CRUD

You know, I actually found this comment clarifying. I don't look at work as solely exchanging time for money (don't get me wrong, I care about money a lot, I just want to get a lot more than money out of my work) so I was coming at it from a different direction.

I do think there's an employee-employer compatibility in play here. Because I care about engagement/mission, I tend to work at companies with a strong culture and seek the same when I interview others - but yeah it's a good reminder that this is not for what everyone wants/needs.


Hey, nothing wrong with CRUD; it's what makes the world go around.

Not that that's anything like a reason not to ask what you need to ask, and turn a Q&A into a brownnosing session.


I know, I’m creating CRUD as we speak


Depends. HR does everything they can to ensure I don't consider the questions I'm asked when deciding if we hire them. They can't stop me, but it is tricky to shoehorn your questions into their form so I don't try.


Working a full time job with family and hobbies is incredibly time consuming. I'm not going to squeeze in 6-10 hours of interviews for a company before I ask an important questions about company culture, PTO, benefits, salary etc. I'll ask the questions I find important in the first interview, if it isn't a good fit I just saved me hours of time interviewing at a company I don't want to work at - and I just saved hours of interviewing an employee they don't want to have.


Umm exactly? I’d rather get my own red flags out of the way rather than waste 8h of everyone’s time to find out the company has a shitty culture. I also checksum the compensation and on-call and other things in the first interview


Like it or not, when interviewing for a job, you're doing a sales presentation. A good sales presentation doesn't open by saying what you want. It opens by finding out what the customer's problems are, then you demonstrate that you can solve them, then when the customer is sold the price negotiation starts.

If you want to vet a company's benefits and culture beforehand, which is a good idea, do the homework first and research it before getting into the sales process.


> Like it or not, when interviewing for a job, you're doing a sales presentation

Maybe in the 90s. Nowadays it's becoming very balanced in the way that companies are the ones who are doing a sales presentation as well.


The company buys, the candidate sells. This is proven by which way the money flows - from the company to the employee.

But both have to agree. You're right that a company will have to be willing to offer enough to get the candidate willing to sell.

I recall interviewing a candidate long ago who was only interested in what the company could do for him. He never displayed any interest in the company or what he could do for the company. I recommended no hire.

After all, what would you think if you went to a car dealership and their salesman would only talk about how much you had to pay and how much the dealership wanted your money, and never talked about what the car would do for you?


I understand that I have to bullshit people like you in interviews and pretend to care.


Picking a career you're interested in and company you're interested in makes things a lot easier than having to maintain a phony facade.

A word of caution - interviewers tend to interview people an order of magnitude or two more times than candidates do interviews. What this means is they learn to detect the bullshit. A friend of mine is in the recruiting business. He interviews candidates all day, and has for many years. He told me that detecting bullshitters and liars is a crucial job skill, and he's pretty good at it.


Maybe, but who dreams about envelopes? Yet society would fall apart without someone making them. The same can be said for the vast majority of things most companies make - it needs to be made, but it is in reality boring.

All companies have interesting problems to solve along the way. But most have boring products. I can work for most companies because even though the product is boring I know I will find something interesting. (the exceptions are companies doing something I find immoral)


> who dreams about envelopes?

There are all kinds of people. That said, if envelopes isn't your bag, nobody is making you interview with them. Find something that does interest you. Me, I'd rather be a lion tamer than a tax accountant (yes, I have the hat), but the guy who does my tax accounting loves it.

> I know I will find something interesting.

And there you go.


I don’t have to maintain a facade. Most companies don’t actually give a hoot if you buy into the CEOs blabberings. They care if I can get my tasks done on time and with decent quality. It’s all a part of the Gervais principle


You're right, but people know that someone interested in the work is likely to do a better job. Also, my point is about selling your ability to solve the company's problems rather than focusing on "what do I get".

Besides, why not pick a career that interests you? It makes for a better life.


And they know they need to not hire people who think this way, as it is inevitably cancer for whatever team or product they are on.

Why not find something you actually care about instead of spending all your time and effort faking it?


This made me chuckle because occasionally, for some things I buy, return policy might be my primary concern (more important than even having the item in the first place).

You're reading way too deeply in to signals that could mean anything. At the risk of coming across as antagonistic - I'll probably start asking about PTO in the first interview even though it tends to be irrelevant to me, to avoid working with organizations that foster this mindset.


PTO is not the return policy, it’s a core feature of the product (in this case the job).


There's a delicate balance. I've worked on teams where it felt like I could never rely on one team member because he was using sick leave, personal days, PTO, and going to appointments at every opportunity. I don't hold it against him personally, but professionally it's hard to estimate workload for a given task if one person on a team of 5 is hardly ever actually doing work.

I've also worked on teams that, same as your friend, heavily implied that taking longer leave breaks were a no-go.

As with all things, it's a balance.


The problem is not what's important to you when you do an interview. It's not a friendly club, it's the guys who will pay your rent for a while, just act like you pretend to understand this, and ask by side channel, out of sheer strategy.

You CAN refuse once the contract arrives for signature, the interview is a lot also for the company to have argument to sell you to management as a worthy investment.

I admit I never take a guy talking about time off myself, because while I agree it's an important contractual part and something we must give as generously as we can, the fact he asked the first minute of our relationship means it's going to be painful for him and for us, because we're not a paradise company, things can be tough and high pressure (investment bank), people not nice on purpose and sometimes you have to do the right thing rather than the perfect thing, so compliant positive nearly sacrificial profiles will be happily surprised by what's still good while a dude asking "and holidays, 20 or 25 days" the first day will be very sad and burnt out by all the shit.


Sounds like a toxic workplace environnement. I'm grateful that my bank/employer cares about our work/life balance. A burnout employee is not a productive employee.

I've stopped applying to place where they are not upfront with their PTO / Salary brackets. It sounds like you don't want people to take their PTO.


> things can be tough and high pressure (investment bank)

> people not nice on purpose

Sounds like a miserable place to work.


I've considered places like that - but none would offer me 5x market pay. If they would pay me 5x what I'm worth - I can save the extra for 5 years and then retire.

I'm not sure if I'd take such a job if it was offered, but at least it would be an interesting offer.


This sounds absolutely dreadful. You’re doing everyone you turn away a huge favor, and I feel bad for anyone you don’t. If I got even a hint of this in an interview I’d be out the door without letting you complete a sentence.


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

Search: