6 ms·
"Easy problems take me 2-5 hours." Are you sure you're not reinventing established theories and algorithms? Those problems are supposed to be hard because they
by flocial 8y ago
"Easy problems take me 2-5 hours."
Are you sure you're not reinventing established theories and algorithms? Those problems are supposed to be hard because they're based on ideas discovered by the most brilliant minds. If you can do them in 2-5 hours with no background you might actually be real good.
Depending on what level of familiarity you have with the material, you might be selling yourself really short. Deliberate thinkers (often misunderstood even by themselves as "slow") are often the most reliable because they take the time to understand and think things through.
Please take a deep breath and start with a reasonable supposition. If "easy" problems are taking too long for you, maybe there's an easy way to "solve" it (memorizing the patterns and knowing the most likely to be tested algorithms).
Like others say in this thread, not only are those problems unrealistic, it's much like test prep for standardized tests that you may have taken getting into college.
- freyr 8y agoRegardless of whether OP is good at programming, it sounds like he might not enjoy it. To OP: you spent a couple years in college and got yourself a CS degree. Congrats. It is not an obligation to spend the rest of your life doing something you dislike. You might try a software job for a year to see how you like it, or maybe it's already time to change direction. Do you already have something else in mind you'd like to do?
- throwaway613834 8y ago>> "Easy problems take me 2-5 hours." > Those problems are supposed to be hard because they're based on ideas discovered by the most brilliant minds. If you can do them in 2-5 hours with no background you might actually be real good. Putting myself in the OP's shoes, this would be really frustrating advice to hear. The OP literally said they already got a CS degree and that these are "easy problems" taking them 2-5 hours. Baselessly calling into question their own assessment of problem difficulty (as if it's likely that they're that clueless about how difficult interview problems are supposed to be after having received a CS degree) while simultaneously suggesting they might actually be brilliant and simply not realizing it is, honestly, just unhelpful advice, if not potentially actively harmful. If you're going to do this, at least ask them to post a question or two so you can independently gauge their assessment first.
- godelski 8y agoI think you underestimate how common imposter syndrome is. It may be that the OP just isn't good at programming. But it may also be imposter syndrome. Having the degree suggests that they did something and gained some skills. So it isn't unlikely that the OP is selling themselves short. Plus it is better to encourage people than put them down. Most people can learn most skills, but some people require less time to learn some skills. That's really the only difference. And there's no clear evidence into which camp OP is in, but it's unlikely that they can't learn the skills.
- throwaway613834 8y agoYou call out impostor syndrome when you actually have evidence to suggest it is the case, not completely baselessly. Like when you give someone a role because you believe in their ability (whether through prior interviews with them, or seeing their prior work, etc.), but they don't feel up to the task. In other words, we know they actually can do tasks that we believe to be of similar or greater difficulty, but they somehow don't believe that that's the case. But we have no single shred of evidence that this is the case here... or if you think we do, well, I don't see it, and neither did the parent comment point to any. In particular, having a CS degree and finding that you're having trouble with what you believe to be easy interview problems (to emphasize: actually having trouble, not merely thinking that you might have trouble if you were to try) is not in any way evidence that you're experiencing impostor syndrome, of all things. It might be evidence that you don't have enough practice, or you didn't learn the material well, or that you lack motivation, or that you just don't find the topic interesting, etc... but the one thing it does not mean (in the absence of extra evidence) is that you're actually brilliant and yet also incapable of assessing the difficulty of interview problems accurately.
- afarrell 8y agoImpostor syndrome gets talked about so much in conference talks that I think we as an industry have started to classify all confidence problems as impostor syndrome and thats just inaccurate and unhelpful. Instead, there are a variety of things in work that can cause problems.
- deleted 8y ago[deleted]
- gaius 8y agoThose problems are supposed to be hard because they're based on ideas discovered by the most brilliant minds Exactly this. The way this game works that you and the interviewer have read the same book. He or she asks you a “difficult” question, you pretend to think about it, then rattle off the answer you memorised from the book. The interviewer is then satisfied that you read the same blogs and follow the same people on Twitter as them, which is what this is really a test for, and you pass. There is zero correlation between any of this and actually working in the industry
- Double_a_92 8y agoThey easy problems are usually really easy to solve. Including tinkering with the syntax of the language it should be possible in ~15 minutes. Even if you don't find some quicker algorithm, bruteforcing usually still works.
- yayana 8y agoStraight out of college, I definitely found ways to complicate simple problems to a few hours. It is easy to put limits on yourself that aren't in the problem, like excluding non optimal solutions or even forcing a specific pattern that isn't really a good fit. But I can't say programming as a career is definitely something every CS major should make their goal. Having a better relationship to coding is something that can be handled gradually with less stress. There is plenty to do in theory and there are plenty of related fields that benefit from a CS background even if one doesn't code. Really, any science/math/statistics masters degree should be considered with those that need the most scientific computing being the best choices for a CS graduate. A CS BS that does a master's in another science might end up programming in R and it isn't really all that different. But the stresses, sense of competition and expectations won't be the same.
- Tmp1234 8y agoI agree that some of the problems are too hard to be realistic. I made sure to not count those when I was analyzing my performance. As I said in the comment I'm linking to below, a few months ago I couldn't even do Fibonacci recursively. I just couldn't figure out how to structure the code, when to call the function, how to pass the results of each call up the stack etc. This is just one example. The other day I tried to do the brute force implementation of finding the median of 2 sorted arrays. Brute force as in have two pointers at the start of each array incrementing until you reach the median. It was too hard for me to code successfully and I spent 2-3 hours on it. I wrote a comment that I realize should have been part of the original post on hindsight. It may give you more content if you choose to respond. https://news.ycombinator.com/item?id=17594084 https://news.ycombinator.com/item?id=17594084