ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I did not say the purpose of writing code is to improve skills of beginners, but I am saying that reading well-written code is a valid way to learn - just as in any craft, one may learn by observing someone more skilled/experienced than themselves.
When code is well written, a beginner can understand the generality of what is going on even whilst they don't yet understand every detail of how it is happening.
Clearly when anyone encounters new language elements they cannot immediately achieve full understanding, but the best code can serve as an example of how to use a particular element and thus aid with understanding. (It's not always possible to write code in that manner - again, if there's a reason to combine multiple obscure constructs in a potentially confusing manner then a good developer will do it, whilst providing a suitable explanation why.)
Are tech interviews broken — or is the cruelty the point?
But if I was responsible for hiring developers at a tech company and I wanted to have a team of neuro-typical people who can work well when put on the spot, won’t question cruel decisions by management, and won’t walk away when confronted by unfair working conditions — then I would make my coding interviews as brutal as possible.
I have very little patience for this sort of "tech interview." In my experience, the most-critical and yet most-lacking aspect in any "team" that I have encountered is that the "team" members actually don't yet know how to work "as a team." They are simply still conditioned to regard their own(!) technical skills – whatever those "skills" may be – as more important (to their own long-term career futures ...) as "those of the team."
It should be implicitly understood that "the individual 'technical skills' of various team members might vary more-or-less," while "the combined(!) 'technical skills' of that same group of people" can be focused(!), with proper management, on that collective(!!) goal.
If you possess even the basic "football-carrying competencies" that are needed, then the single factor that I am most interested in is: "can you actually be a part of a team?" In other words, "can you give 'your precious Self' up, in pursuit of a common goal that is bigger than you are?"
Unfortunately, what I still find are: "Lone Wolves." They are, simultaneously, "utterly convinced of their own singular prowess," and, "entirely unaware of 'how to share the win.'" Therefore, for perhaps their entire careers, you hear them grousing on this-or-that forum how "their boss is out to get them" while they "[single-handedly ...] carry the entire load."
Last edited by sundialsvcs; 10-23-2022 at 08:03 PM.
If you allow people to not participate, to not collaborate, and to wallow in their own egos, then they're not a member of the team. And that atmosphere could be the team lead's fault.
You can't read minds and hearts, but you can try to assess technical skills, team skills, and professionalism.
This is why the first 90 or so days people can usually be dismissed more easily. It's NOT good, that's not normal and does reflect on you as a hiring manager.
I prefer to assess their technical skills by presenting them with a design challenge and seeing how they approach it, and give them unforseen issues to also see how they approach that, then see how they debug a problem that wasn't necessarily due to their design, or their code.
I certainly want to assess how I feel they will work with the team, and therefore team members are part of the interview and have full input about the decision. I mean if an excellent team member is reluctant on a candidate, that means something to me, and I just don't override their opinions.
Many times they give a presentation of their self to all of us at the start of their interview process. When we conduct the interviews assessing their teamwork and technical abilities, it is typically two persons on the hiring end together each part of the process. To me that helps a ton, you see how a person reacts to different people, live.
Better to not hire a marginal candidate than to give in, and potentially have to deal with the fallout.
On more than one occasion, "star quarterbacks" have come up from the college ranks and utterly washed out when they reached the pro teams. Because they were so much better than their college teammates that the "team" simply let them have the ball. When they were among other players who were every bit as good or better than they were, they had a lot of time adjusting and sometimes couldn't do it.
In every team I've led or been a part of, we had a "five-minute rule." If you couldn't come up with a strategy within five minutes, you were instructed to seek help from your teammates, and they were instructed to help you. We also had every-morning meetings – I think they call them "stand-ups" sometimes – where everyone told everyone else what they were planning to do, and sometimes they were then asked to provide details. The essential notion is that "no one 'owns' anything." The team owns everything, and only the team. We also had mentors, and there was actually a little mostly-informal training guide for those mentors. When you were a newcomer, you were paired-up with a mentor or two.
Last edited by sundialsvcs; 10-26-2022 at 11:25 AM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.