• (disco) in reply to evandentremont
    evandentremont:
    On a related note, the number one indicator of employee tenure and performance was referrals.

    On a related note, relying heavily on referrals is a great way to make an echo chamber without new ideas.

  • (disco) in reply to chubertdev

    It's a great idea. Makes it easier to weed out the bad employers.

  • (disco) in reply to Polygeekery

    Doesn't have to be the /only/ indicator. But it's a good one.

    On the other side of the fence, the best indicator of employee satisfaction is having a technically competent manager.

  • (disco) in reply to evandentremont
    evandentremont:
    Doesn't have to be the /only/ indicator. But it's a good one.

    Meh, not really. It can help, but it is always towards the bottom of my list when evaluating potential employees.

    evandentremont:
    On the other side of the fence, the best indicator of employee satisfaction is having a technically competent manager.

    Meh, I will take a manager that can effectively lead over one with a lot of technical knowledge who cannot lead any day. A requirement for management rarely exceeds a high level overview of how everything works. If they know more great, but it is more important that they know how to lead people.

  • (disco) in reply to Polygeekery
    Intercourse:
    Meh, not really. It can help, but it is always towards the bottom of my list when evaluating potential employees.
    What's at the top of your list?
    Intercourse:
    Meh, I will take a manager that can effectively lead over one with a lot of technical knowledge who cannot lead any day. A requirement for management rarely exceeds a high level overview of how everything works. If they know more great, but it is more important that they know how to lead people.
    I find to lead effectively, you need to either trust your team, or have direct subject matter experience. Someone with does both is a far better manager than one with neither.

    At the far extreme, years ago I worked in an Apple call center, and the managers were hired as managers, to manage, as management. Their position literally had nothing to do with their team. You'd have meetings once a week or so to stay in 'spec,' but they could offer no advice on how to do so. I was told to start arbitrarily putting people on hold, to raise my average handle time, because I was "creating an unrealistic expectation of support in the future"

    Any technical manager would have said "good job!"

  • (disco) in reply to evandentremont
    evandentremont:
    What's at the top of your list?

    Culture fit is #1. If the person will not fit in the company, they are not worth having around. The wrong hire, no matter how competent, can be a corrosive influence and tear down the rest of their team.

    evandentremont:
    I find to lead effectively, you need to either trust your team, or have direct subject matter experience. Someone with does both is a far better manager than one with neither.

    Yes, I would agree to some degree. But I do not think they need to know near as much as those they lead. At least not at the beginning. A good leader who is a good learner can make an amazing manager. Technical proficiency becomes even less important as the org chart grows.

    evandentremont:
    you need to either trust your team

    That is the most important part of the equation. If I employed you because you are really damned good at X and I have a job that requires proficiency in that, then I need to be able to trust you to handle it. I also need to be able to trust you, and provide an environment where when you get in over your head, you do not feel like it is a mark against you to ask for help. No one can know everything.

    A good manager also needs to know enough to know how everything fits together and what is likely to be the correct solution for the problem. I do not think it is entirely necessary for them to know all of the nuts and bolts of that solution though, that is the point I was trying to get at.

  • (disco) in reply to Polygeekery
    Intercourse:
    Culture fit is #1. If the person will not fit in the company, they are not worth having around. The wrong hire, no matter how competent, can be a corrosive influence and tear down the rest of their team.

    QFT.

    so true.

  • (disco) in reply to Polygeekery
    Intercourse:
    Culture fit is #1

    Wouldn't that inherently happen as a result of referrals?

    Intercourse:
    I do not think it is entirely necessary for them to know all of the nuts and bolts

    I don't mean they need to know everything, but I do think they should be able to understand it. I had to quit my last job as lead dev it was so bad. Immutable and arbitrary technical requirements coming from the CEO, who was a graphic designer by trade.

    I suppose that's not the case everywhere, but in my opinion, anyone who can't get this can't lead a technical team. http://www.explainxkcd.com/wiki/images/6/60/tasks.png

  • (disco) in reply to evandentremont
    evandentremont:
    I don't mean they need to know everything, but I do think they should be able to understand it. I had to quit my last job as lead dev it was so bad. Immutable and arbitrary technical requirements coming from the CEO, who was a graphic designer by trade.

    Sounds like my last job, except the CEO wasn't technical in any way...

  • (disco) in reply to chubertdev

    Graphic designers aren't all technical. There's a difference between knowing how to use a program, and knowing how a program works.

    It's a huge gap. One is right brain, creative, while the other is left brain, or logical.

    Car analogy: I wouldn't trust the average driver, no matter how well they can parallel park, to work on my engine.

  • (disco) in reply to evandentremont
    evandentremont:
    Wouldn't that inherently happen as a result of referrals?

    As a person who has managed people for literally my entire working life, not as often as you would think...

    I once took over a division of a company that was the definition of nepotism and it was a habit that I had to force them to stop. Lots of bad hires referred by really good people. Even awesome people have a few assholes for friends...

    evandentremont:
    technical requirements coming from the CEO

    http://i2.kym-cdn.com/photos/images/newsfeed/000/228/264/train-theres-your-problem.jpg

    CEO's should lead those directly below them and set policy and direction. As soon as they start micro-managing and running the day-to-day, they are no longer a CEO in my eyes.

  • (disco) in reply to evandentremont

    Now imagine someone who says "I don't drive" working on your engine.

  • (disco) in reply to Polygeekery
    Intercourse:
    Meh, I will take a manager that can effectively lead over one with a lot of technical knowledge who cannot lead any day. A requirement for management rarely exceeds a high level overview of how everything works. If they know more great, but it is more important that they know how to lead people.

    It can be OK if you've got a good leader and then a single layer of technically-competent management beneath that. More, and you can get into problems. (I used to work in a department where there was very poor leadership at the top at the time. It takes a while for things to really go wrong, but the place slowly circles the drain. We put a stop to it — at about the point I moved — by a thorough replacement of senior management. The current guy seems good, and needs to be to fix the problems. We'll see just how good he is, but he certainly beats the previous incumbent…)

  • (disco) in reply to Polygeekery
    Intercourse:
    As soon as they start micro-managing and running the day-to-day, they are no longer a CEO in my eyes.

    Pretty much. The org structure was fucky; I was the lead dev, reporting to the CEO, while the CTO was part time and offsite.

  • (disco) in reply to Polygeekery
    Intercourse:
    As a person who has managed people for literally my entire working life, not as often as you would think...

    Actually, now that I think of it when I was doing webdev for a marketing agency a couple years ago they hired a perma-student as an account manager who was best friends with the owners girlfriend. That was fun.

  • (disco) in reply to evandentremont
    evandentremont:
    The org structure was fucky

    Yeah, they needed someone who is competent in business.

    I employ developers and technicians. They will tell you that I am not the most technically competent person out there. In fact, they (and I) will tell you that I am lacking in a lot of areas in that regard. But I do know business, I know how to lead people and I am capable of making decisions. I hire people who fill in the areas that I am weak in, I consult with them, and I trust them. I also develop them because a man much wiser than I taught me that part of managing people is the responsibility to prepare them for their next job...whether it is with you or another employer.

  • (disco) in reply to evandentremont
    evandentremont:
    Wouldn't that inherently happen as a result of referrals?

    No. I have a lot of loser friends who could be toxic to a company. I guess I'm wise enough to not refer them, though.

  • (disco) in reply to xaade
    xaade:
    but I want to know.... can you organize **instigate** a riot/protest?"

    FTFO

  • (disco) in reply to Polygeekery

    Self-sacrificial leadership is rare.

  • (disco) in reply to Polygeekery

    Image: Meanwhile In America

    While accident actually occurred in Germany.

    Blaming everything on America? "Well There's Your Problem." Yes, yes indeed.

  • (disco)

    If I were asked a question like this in an interview, my response would probably be "I don't have enough information or subject matter knowledge to give you a close approximation right now. If I had a couple hours to research this I could come up with some approximate formulas, along with a report on all the things that could cause error in the formulas."

    Or I would write something like var annualRainfall = random( 1000, 10000000000000000000000000000000000 ); // TODO: refactor

    I have been forced to do 'preliminary work' on too many projects in the past where specs and/or crucial information were not available - 99% of the time when they became available, most of the work was wasted, or it turned out the project was unfeasible.

  • (disco) in reply to Polygeekery
    (depth in the middle/2) * width of river * speed of flow * 24 * 365.24 =

    Very nice...

    Unfortunately, you're assuming :

    • That the speed of flow is constant (which it won't be, owing to rainfall patterns throughout the year...
    • That the mouth of the river isn't tidal (which it will be). For your formula to be close, you would have to measure the rate of flow at just the right time of day. Which you won't.
    • That the surface of the riverbed is carved as two perfect slopes, and that the slopes actually meet (no truly flat bit).
    • That the width of the river remains constant throughout the year, which it probably doesn't.

    So, basically every single assumption you made is suspect.

    The smart developer at this point says "It's not my job to understand river systems... I'll find someone who does this for a living and implement the algorithm I am given...". As developers we are often called upon to add our own knowledge / ideas to the products we create, and this can be a mistake. One of the most important things any developer can know is what they don't know!

  • (disco) in reply to mjmilan1
    mjmilan1:
    For your formula to be close, you would have to measure the rate of flow at just the right time of day. Which you won't.

    People keep making objections similar to this. Nonsense! Obviously the estimated flow rate is the average over time.

  • (disco) in reply to mjmilan1
    mjmilan1:
    Unfortunately, you're assuming :

    Ask me if I give a shit. Did you read the entire post and then make a conscious decision to miss the entire point?

    In this case, I would care fuck-all about accuracy.

  • (disco) in reply to blakeyrat
    blakeyrat:
    No. I have a lot of loser friends who could be toxic to a company.

    I am going to "Fermi estimate" how many loser friends you have..... .... .....just a sec...... ...

    the answer is "7".

  • (disco) in reply to monkeyArms
    monkeyArms:
    I have been forced to do 'preliminary work' on too many projects in the past where specs and/or crucial information were not available - 99% of the time when they became available, most of the work was wasted, or it turned out the project was unfeasible.

    Your name serves you well.

  • (disco) in reply to Monarch
    Monarch:
    Your name serves you well.

    Luckily I no longer work for a "sales-oriented" company ;-)

  • (disco) in reply to FrostCat

    So I offer four fail points, and you object to one. Even if you were right (you're not - I'll cover that in a moment...), it's a little soon to be claiming victory, no?

    Why are you wrong? The river will not be a perfect cyclic system - it's subject to seasonal change. Oh - and where exactly are you measuring this rate of flow? Because I assure you it will vary based on both the position with respect to the banks, and the depth of the water.

    Ok - I perhaps I am being a bit of a smartass, but what I am trying to highlight is that the only answer I would be interested in from a candidate (and I do interview) is "What the hell has that to do with me?". A decent developer. should have his / her alarm bells ringing at a problem like this. If the interviewer insisted on a solution, my next questions would be "why is a poor solution so valuable to you?" If they STILL pushed it, it would become "Sorry, I don't think you're a good fit for me, so I suggest we leave it here..."

    On an unrelated side note, I've just discovered that typing in this little editor seems to reenable my trackpad... Very annoying!

  • (disco) in reply to Polygeekery

    My point is that you shouldn't be even trying to answer the question. There are variables at play here that neither one of us appreciates - and a smart developer realises that - and fights his / her corner if pressed.

  • (disco) in reply to mjmilan1
    mjmilan1:
    My point is that you shouldn't be even trying to answer the question. There are variables at play here that neither one of us appreciates - and a smart developer realises that - and fights his / her corner if pressed.

    I agree with this. You hire a developer (hopefully) to solve real-world problems. Why try to figure out "how they think" given fantasy world problems? Does that translate somehow into the job you are hiring them for? If so, are you a licensed psychologist?

  • (disco) in reply to mjmilan1

    The only valid scenario I could think. We want to measure the flow rate. Here are a few flow meters, and we don't have a specific sampling algorithm in mind, but the industry regulated standard is [name], so find the official published source and use it.

    The pair is to act as a redundancy. We don't care if you average the input, or use a primary/secondary model (automatically my alarm says make it configurable).

    In no way, shape or form, is this solution having anything to do with wild guesses based on speculated data.

    At most you're going to fill in gaps in the customers knowledge by researching industry standards.

  • (disco) in reply to mjmilan1
    mjmilan1:
    "You seem to have me confused with geographer... The algorithm for calculating the volume of water passing out of the river not being known to me, I would consult with someone qualified to provide such an algorithm, and then implement it.

    This is as good an answer as any. If you're looking for as precise an answer as possible, this is actually the way to go & probably would be my preferred choice from most other answers.

    Real life application: We are trying to get fiber lines installed at our locations to upgrade our network speeds. Turns out the Telco consulting with our provider to lay down the lines is only bringing it to the property line (that's all they're required to by law, so they're not interested in routing the tunnel/cabling all the way into the building.) Now am I bothering to find out how to bore a 4" hole through the ground and concrete to get from their drop box into our building to hook things up? No thanks! I get a contractor who knows what they're doing to do it for me & give them the requirements. Once I have the cable routed inside where the Telco needs to terminate it, I let them finish their job. Then I get to connecting our equipment up to it. Life goes on.

    I can respect a professional deferring to another professional when the data in question is coming from a field he's not expert in.

    Initech:
    In my very first interview out of college 14 years ago, the interviewer asked me this exact same question, except it was the Mississippi river, not the Amazon. I squirmed in dumbfounded shock as to why the hell I was even asked that question. And it wasn't just 30 seconds. He sat there with a smirk on his face for at least 5 minutes, refusing to accept "I have no idea" as an answer. He was such an asshole about it. Fuck him. All it did was reinforce the insecurities I already had about being qualified for ANY programming job I was interested in, since the only qualification that I had that matched the listed requirements was the BS in CS. I left that interview feeling very angry, insecure, depressed and convinced I'd never get a programming job.

    To this day, my blood boils thinking about that experience.

    This is why you don't ask newbies with no experience this kind of question without some hint of what you're looking for. The road to overall success is through smaller successful steps leading up to successful tasks, which in turn lead to successful projects, and a successful career. You can expect a newbie to do something like this when they first start out. That's why they're supposed to get some guidance early on. Until real world problems have been dealt with to some extent, expecting someone to be perfectly functional in the real world is unreasonable - and costly for all.

    That interviewer wasted both your time and his with his approach and is TRWTF.

  • (disco) in reply to mjmilan1
    mjmilan1:
    I perhaps I am being a bit of a smartass

    +1 would quote again.

    You're obviously over-thinking the entire thing. I just happened to reply to you because your message seemed a bit more pedantic than the others.

    If you're going to spitball an answer to this type of stupid question, then your answer might as well include things like "My estimate of the flow rate is the average rate over the course of a day" or year if you want to nitpick about seasonal variations.

    Similar answers apply to the other nitpicks about the shape of the river and everything else because the goal, as you well know, isn't to get the actual volume.

    It's like the lifeboat thing. The one time I got asked that in a real so-called team-building exercise, I said I wanted to be the lawyer, and then that I was going to volunteer not to stay in the bunker because as a lawyer I felt I was able to survive with the other sharks outside.

  • (disco) in reply to blakeyrat
    blakeyrat:
    No. I have a lot of loser friends who could be toxic to a company. I guess I'm wise enough to not refer them, though.

    The problem that I have is that I have a bunch of friends who would be extremely good co-workers, but they don't use the same technologies as I do. I'm a .NET developer, and my friend wants me to get hired for an "awesome" Perl job based on my Python code that he's seen.

  • (disco) in reply to FrostCat
    FrostCat:
    If you're going to spitball an answer to this type of stupid question, then your answer might as well include things like "My estimate of the flow rate is the average rate over the course of a day" or year if you want to nitpick about seasonal variations.

    Have you accounted for global warming climate change?

  • (disco) in reply to mjmilan1

    Now that I am back to my laptop, I can given a better response.

    mjmilan1:
    That the speed of flow is constant (which it won't be, owing to rainfall patterns throughout the year...

    I don't care, that would be captured under the "average flow rate".

    mjmilan1:
    That the mouth of the river isn't tidal (which it will be). For your formula to be close, you would have to measure the rate of flow at just the right time of day. Which you won't.

    I don't care, that would be captured under the "average flow rate".

    mjmilan1:
    That the surface of the riverbed is carved as two perfect slopes, and that the slopes actually meet (no truly flat bit).

    I don't care, I just care that you can see how to start to work towards a solution.

    mjmilan1:
    That the width of the river remains constant throughout the year, which it probably doesn't.

    I don't care, that would be captured under the "average flow rate".

    mjmilan1:
    So, basically every single assumption you made is suspect.

    No, when you assumed that I as an interviewer would care fuckall about the accuracy of the calculation you had the suspect assumption.

    mjmilan1:
    The smart developer at this point says "It's not my job to understand river systems... I'll find someone who does this for a living and implement the algorithm I am given...". As developers we are often called upon to add our own knowledge / ideas to the products we create, and this can be a mistake. One of the most important things any developer can know is what they don't know!

    Yes, and no. Yes, that is something that you should probably get counsel on, but you are forgetting about context. I don't fucking care about accuracy, I just want to see that you can see how to work towards a solution. For a question like this, assumptions would be perfectly fine. Your tone sounds very defeatist, and your tone towards the solution of a problem is pretty piss poor.

    FrostCat:
    People keep making objections similar to this. Nonsense! Obviously the estimated flow rate is the average over time.

    Hey! Someone in this thread knows WTF "average" is! :smile:

    mjmilan1:
    Why are you wrong? The river will not be a perfect cyclic system - it's subject to seasonal change. Oh - and where exactly are you measuring this rate of flow? Because I assure you it will vary based on both the position with respect to the banks, and the depth of the water.

    For these purposes, in this context, no one fucking cares.

    mjmilan1:
    the only answer I would be interested in from a candidate (and I do interview) is "What the hell has that to do with me?"

    Gotcha, you like to manage defeatists. That explains it all actually...

    mjmilan1:
    If they STILL pushed it, it would become "Sorry, I don't think you're a good fit for me, so I suggest we leave it here..."

    Honestly, if this is at all representative of your real personality and work ethic, you would not even make it past the phone screening with me. Words say a lot about a person, and your words seem to say, "I give up really fucking easily."

    mjmilan1:
    My point is that you shouldn't be even trying to answer the question. There are variables at play here that neither one of us appreciates - and a smart developer realises that - and fights his / her corner if pressed.

    No, this is a hypothetical question. People care fuckall about accuracy. Just show that you are capable of solving a problem and don't be a cunt about it. Here is the thing I have noticed about people, as soon as they start using words like "can't", they have already given up. As a person who leads people, it is not my responsibility to push people until they succeed despite their best efforts. I am a business owner and a supervisor, I am not a fucking motivational speaker. Here is how such conversations go around here:

    "I can't do this" "Why not?" "I need X, Y and Z." "So it is not that you can't, it is that you have prerequisites or issues that we need to overcome?" "...yeah, I suppose so?" "Good, now let's figure those out, then you can do it, correct?" "Yeah" "OK, change your language. As soon as you say 'I can't', you have already stopped trying."

    I do not even hire people who will talk that way, if I can tell at the outset. They are not worth working with. Their parents failed them and now they are quitters. If a person cannot change their speech and attitude, they can go work somewhere else. I did not sign up to babysit or be someone's surrogate father. I have a toddler of my own.

  • (disco) in reply to Polygeekery
    Intercourse:
    In this case, I would care fuck-all about accuracy.

    Then what do you care about? That the interviewee knows this particular trick from that "100 interview questions for dummies" book? Because a) this is probably older than the round manhole cover question, and b) it tells you absolutely nothing.

    Do you care about the interviewee's familiarity with river systems? So what if he doesn't catch on that you can estimate at the point of outflow, and not from the rainfall - it's not his problem domain, for all you know he might not have ever seen a river in his life and still be a useful hire.

    Do you care about the interviewee's ability to make rough estimates? Then ask a question from his problem domain, instead of deliberately throwing him off - a question where you're sure he should be able to make an educated guess. Like "how long will it take to sum a 1000^4 hypercube on a Pentium processor?" Same principle without the bullshit (or as much bullshit, at least).

    The point is, either the guy has read about this technique, or he hasn't. In first case, it tells you nothing whether he succeeds or fails; in the second, he might just figure it out if he's clever, but I don't think this particular kind of cleverness really matters a lot.

  • (disco) in reply to chubertdev
    chubertdev:
    Have you accounted for global warming climate change?

    You may assume my numbers account for any factor that might be relevant.

  • (disco) in reply to Maciejasjmj

    The point of the exercise is to give the interviewer a problem that they have never encountered before and see if they can work towards a solution, or if they just throw up their hands and cry about not being able to solve it given the data.

    A lot of the times in this field we will assign variables that we later come back and put a value in to in order to complete the equation, this is no different.

    (just make sure you initialize them, depending upon your language. ;) )

  • (disco) in reply to FrostCat
    FrostCat:
    You may assume my numbers account for any factor that might be relevant.

    Even Galactus!

  • (disco) in reply to Maciejasjmj
    Maciejasjmj:
    for all you know he might not have ever seen a river in his life and still be a useful hire.

    You know, I didn't want to really participate any further in this silliness, but I doubt that those are overlapping sets of people.

  • (disco) in reply to Polygeekery
    Intercourse:
    Did you read the entire post and then make a conscious decision to miss the entire point?

    i think that was an attempt at the pedantry badge...

  • (disco) in reply to FrostCat
    FrostCat:
    You know, I didn't want to really participate any further in this silliness, but I doubt that those are overlapping sets of people.

    Anyone who has "never seen a river", is unlikely to possess the interpersonal skills for anyone to want to work with them.

  • (disco) in reply to accalia
    accalia:
    i think that was an attempt at the pedantry badge...

    Yes, but dickweedery sans pendantry = no flag.

  • (disco) in reply to Polygeekery
    Intercourse:
    The point of the exercise is to give the interviewer a problem that they have never encountered before and see if they can work towards a solution, or if they just throw up their hands and cry about not being able to solve it given the data.

    So a total wild guess is better than admitting you can't have a reasonable solution? Because really, usually it's better to just ask someone for the data than risk being off by several orders of magnitude.

    FrostCat:
    You know, I didn't want to really participate any further in this silliness, but I doubt that those are overlapping sets of people.

    Now that's racist.

  • (disco) in reply to FrostCat
    FrostCat:
    Yes, but dickweedery sans pendantry = no flag.

    i said attempt, no?

  • (disco) in reply to Maciejasjmj
    Maciejasjmj:
    So a total wild guess is better than admitting you can't have a reasonable solution? Because really, usually it's better to just ask someone for the data than risk being off by several orders of magnitude.

    Ahhhhhhhhhh! No, write out an equation with suitably named variables and operands to show that you could solve it given the correct information. Good enough for me!

    Do you always dive right in to coding something, or do you write pseudo-code first?

  • (disco) in reply to Maciejasjmj
    Maciejasjmj:
    So a total wild guess is better than admitting you can't have a reasonable solution?

    No, of course not. Trying to figure out how you might calculate a solution is the point, to see if you're the kind of person capable of that, or just someone who's only good at writing reports, or doesn't even belong in the field at all.

    I generally think this kind of question is shit, myself, but I understand why people ask it, except, of course, for Google's take, which is "this is not useful."

  • (disco) in reply to Maciejasjmj
    Maciejasjmj:
    Now that's racist.

    That's a pretty stupid thing to say.

  • (disco) in reply to accalia
    accalia:
    i said attempt, no?

    Don't cockblock my badge attempt. :\P

Leave a comment on “The Amazon River”

Log In or post as a guest

Replying to comment #:

« Return to Article