DEV Community

Discussion on: 🌱 When did you really start learning to become a "software engineer"?

Collapse
 
thedenisnikulin profile image
Denis • Edited

Personally I always feel that I don't know enough. I'm now learning more enterprise-y things, architectural patterns (I am a backend developer), systems programming, functional programming sometimes, but the feeling of learning enough is quite short lasting. I believe it's more a mental problem than the problem with my skills, so I just try to enjoy what I am doing and don't hurry!

Collapse
 
vickalchev profile image
Vic

I totally get you - the feeling that you don't know enough will be there even when you're on top of your game. Things are changing so quickly that by the time you master something new, another version of it has come up.

For me, it was the moment I started solving harder programming problems.

Collapse
 
peerreynders profile image
peerreynders • Edited

From Brian Holt - Having Empathy while Teaching Programming:

Inverted triangle: awareness of what you don't know grows with knowledge

As knowledge grows, so does the boundary of "knowing what you don't know".

From that perspective it's never "enough" but just a continual re-assessment of which part of the boundary is most valuable to expand right now.


FYI: E. W. Dijkstra, 1993:

"Ours is the task to remember (and to remind) that, in what is now called “software engineering”, not a single sound engineering principle is involved. (On the contrary: its spokesmen take the trouble of arguing the irrelevance of the engineering principles known.) Software Engineering as it is today is just humbug; from an academic —i.e. scientific and educational— point of view it is a sham, a fraud." 😁

Collapse
 
thedenisnikulin profile image
Denis

Thank you very much, I didn't thought about it before, great insight!

Collapse
 
hunghvu profile image
Hung Vu

"Engineer" is a legally protected title in many countries and you need substantial experience and knowledge to achieve it. In my country, it is equivalent to a master's degree. Software engineer, even with the keyword in its name, is still not a real "engineer" by the law. Using this perspective, I think I understand why Dijkstra said that.

Many times, I only use the title "software developer" to explain my job to people who are not in the field (e.g., family) to not confuse them. That said, on the job market, "software engineer" may sound fancier and provide better results. 😆