Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Considerations Before Graduating as an Engineer (debec.eu)
47 points by Ninroot on Nov 29, 2020 | hide | past | favorite | 29 comments


This from the article makes me sigh:

> And because geniuses understand complex things, they design complex systems that no one understands. Their loneliness makes them unique masters of their subjects, thereby nurturing their self-esteem. Knowledge remains in their heads and their presence becomes necessary for every decision.

This is of course true, a genius can do this. But given so can just about anybody else given enough time. We have a name for it when a non-genius does it: people built up technical debt that no one else is across. About the only difference between the genius and everybody else is the genius can create this gap faster than most.

Which should be a hint what the cure is, and it isn't getting rid of the genius. (I'm sure Elon Musk would be rolling his eyes at the thought, or possibly rubbing his hands in glee if you are a competitor or his.) The cure is to set up the code review systems and documentation so everyone is across what he is doing. In effect you demand he spend the time dragging everyone up to his level. If he is a true genius, he will have broken things down into clear, distinct, modular lumps, that everyone else can digest now he's walked the path for them.

The article is right in saying that solution isn't taught in technical classes. It's a social and cultural issue. That probably why it blamed the genius, and not the culture.


Few companies are going to pay them differently for that effort, so they'll just likely leave. This situation is probably long-term worse for morale because there's no collective sense of accomplishment and instead everyone's betting their stability on one person.

If someone's too far ahead of everyone else in terms of skill (through their own work or talents), they should be given opportunities to find or create a team with similar skills. Just because you happened to join a team with different skill levels does not mean you're now obligated to teach everyone else. It's great when people decide to teach others when there's a large skill gap, but that should be a personal choice.


> In effect you demand he spend the time dragging everyone up to his level.

And ... the genius is gone.


Perhaps but working for a company, they don't want genius specifically, they want results, and not to be locked into some code that if one person leaves they are stuffed.


Genius + empathy for non genius beings is a very rare combo


Being good at many disparate things when you are young is a very rare combo in general. It takes time to become very good at anything. Someone who has had enough time to be both a technical genius's and learnt how to relate to the many and varied personalities out there would be a remarkable find indeed. It's not at all surprising a young person would look around their peers, and decide such a thing is very rare.

But the gift of time comes with age. Coincidently so does the gift of wisdom. Maybe wisdom is merely a word for having had the time to gain a good understanding of many aspects of the human condition.


I’ve met plenty of empathic “geniuses” (as the article defines them), they just aren’t as noticeable.


What are you basing this off of? Rick and Morty? Have you ever met an actual genius?


When the post start with appeal of authority(blog post, nonetheless) and a humble brag, the likelihood of non-thought-out content seems to be greater.

Seems like most of the points are quite shallow, and I especially have trouble with his description of genius.

He seems to conflate genius and elitist.

>geniuses understand complex things, they design complex systems that no one understands. Their loneliness makes them unique masters of their subjects, thereby nurturing their self-esteem. Knowledge remains in their heads and their presence becomes necessary for every decision.

In my experience, these are more often a pretender that comes from being the "big fish in the small pond" with self-esteem closely tied to the performance, and often nothing more than a facade to hide a underlying self-esteem problem.

Almost every person I've met that have showed "genius" qualities, (and 10 years later, shows in their track record) have been incredibly humble and spend a lot of effort explaining their thoughts, solutions and products to great length. At least at one point in their life they understood that behaving like mentioned "genius" by the author, leads to nothing and is a unproductive (pseudo-intellectual) behaviour. Even in academia.

So the authors point of "Professional > Genius" is not really a university issue. If anything should be something one experience in a university, through peer interactions. Maybe the top1% might go out without this insight, but sooner or later this will hit you. Not something one needs to focus in college, though.


> He seems to conflate genius and elitist.

He probably conflates genius and "people who call themselves genius". Like, the kind of people who come introduced by someone in the management as "big experts", who insist that you rename all Java classes so that they start with "C", and all interfaces so that they end with "Intf", and after a few months when things get difficult they leave to join another project which will better appreciate their wisdom. Sorry, bad memories...


I dual majored in Computer Science and Politics. While I didn’t expect my politics degree to be particularly useful in a programming/engineering career, I’m finding that after rising in seniority the “liberal” skills that I learned (writing, argumentation, analysis of relationships, etc...) are increasing in their usefulness whereas the importance of my technical skills has remained flat.


It is complications like this that make me happy that engineers are not expected to spend a long time in their jobs. Can just go find greener pastures.

I am not going to spend effort fighting for Gitlab. I am going to spend effort on my resume so I can go join a team with Gitlab.


>Can just go find greener pastures

Can just go find other pastures. Whether they're greener or not is a bit of a crapshoot.


Everything here is 100% correct. I have even said in interviews that almost all difficult software problems in the real world are actually social problems.


I have left jobs because of culture but not before trying my best to improve it. If the culture is structurally harmful though it depends on top down change not bottom up.


I'm about to switch jobs for this reason. There is no point in trying to change an autocratic culture when you have little power.


Attempting to change the culture seems like a waste of time to me unless you hold a high position in the company.


> In 2018, I graduated from EPITA, a french engineering “Grande École”

Epita is not a "grande école". This term is used for public engineering schools such as Polytechnique (X), Centrale, les Mines, etc. which have very very selective entrance exams. EPITA is a private school, which is commonly seen as "pay your diploma" for people who can’t compete in the traditional elite engineering circuit.


I've personally worked with a bunch of EPITA graduates in the past and they are some of the best young software engineers I've ever met.


It might be a great school and who cares if someone went through a "grande école" but why would an article preface itself with a statement so obviously false.


Maybe because the author is the sort of person who calls himself a lonely genius.


EPITA is not part of the French elite school system. It couldn't even deliver an engineering degree until 2010, and considering the curriculum, I am surprised it could, but I guess it is all part of degree inflation that we see everywhere.


That's an interesting point. I haven't found consistent source about it. I relied on the English page of Wikipedia. If you have a solid source that would invalidate, please sent it to me and I will ba happy to update the article. In the meantime, I will keep that blurry definition https://www.legifrance.gouv.fr/loda/id/JORFTEXT000000359000/...


Why go with the English version instead of the French one?

https://fr.m.wikipedia.org/wiki/Grande_%C3%A9cole#Corps_civi...

EPITA is not a "grande ecole". Doesn't mean it's not a good school.


EPITA seems to be a "Grande École" according to wikipedia [1].

It's obviously not as selective as Polytechnique and their curriculum is more applied and less theoretical than other "traditional" schools, but maybe it's for the best.

I've consistently heard good things about people who graduated from that school. Actually, in my company, one of the most productive engineer is an EPITA graduate, and we do have a lot of employees coming from much more elitist schools (including ENS and X).

[1] https://en.wikipedia.org/wiki/Grande_école


Good job! Now start leetcoding. What is the TC for DevOps @ Airbus Defence & Space GmbH?


I'm thinking we need a new word that isn't "Engineer" for programmers.

Engineering is Applied Science, Programming is not Applied Science.

Programming is a combination of Art/Authority/Tradition/Science.

If you talk to an engineer and you talk to a "software engineer" you will notice a huge difference in visualizing the world. An engineer talks in metrics, you won't get that detail from a software engineer.

An engineer cannot program like a Programmer can.

Source-Changed to Programming because it was my passion. Programming is not Engineering.


In my school we spent five years on the intersection of math and programming that would make Dijkstra proud with only around 2 tiny courses for learning to program.

I don’t like to call me a software engineer because then people assume I studied git flags for years. Computer Scientist would be one term but people starts to assume that’s programming. If I say Theoretical Computer Science then programmers starts to understand the subjects spent learning (I was one course away from having that as my speciality). Even so I feel quite silly being irked about it because school was a long time ago and I’ve forgotten most of it and now I do remember a lot of git flags...

Any way, I’m rambling, my point is, Software Engineering as applied science does exist and thrive, you only need to look at some award winning research papers to convince yourself of that. The problem is that people assume they are training engineering when they are coding because the allure is so strong, when what they should try to do is write a research paper.


I think of programming as most similar to writing. This may be more true of userland application development than things that are more purely mathematical or low-level. But even then there are parallels. At the end of the day you are creating a work of written language, where "humanistic" decisions beyond the raw formulas shape how the work is understood and interacted with (e.g. symbol/variable/file names, or how the code is broken up [or not] into modules/subroutines).

A programmer getting started contributing to a large existing codebase may feel more like a proofreader or editor at first. But creating an application from scratch definitely seems very similar to writing a novel.




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

Search: