4 ms·
Junior level is when you know all language features, and are starting to learn the ecosystem of tools and libraries. You're probably much smarter or more dedic
by wobbleblob 11y ago
Junior level is when you know all language features, and are starting to learn the ecosystem of tools and libraries.
You're probably much smarter or more dedicated than me if you feel this level can be reached in a much shorter time.
- dagw 11y agoJunior level is when you know all language features Wow, in that case I don't think I've ever worked with anybody who's ever managed to reach "junior level" in any language. What do you call someone with, for example, just a PhD in the relevant field, 6 or 7 years of professional programming experience and several successfully shipped products under his belt. And what do you call the guy that is obviously his junior?
- wobbleblob 11y agoWhen someone with a PhD in the relevant field, 6 or 7 years of professional programming experience and several successfully shipped products under his belt starts learning something new, he's a junior at that new thing.
- dagw 11y agoMy point is that knowing all of a languages features is neither necessary nor sufficient for getting real work done even at the highest level. I've worked with some pretty smart and experienced people in my career and non of them would probably claim to know every single obscure corner of their favorite language.
- hnbro 11y agonice dodge. chewbacca defense!
- hellofunk 11y agoI think you are missing the point. It is widely understood in the C++ world that no one needs to know "all language features" and in reality, almost no one does. It's not a language where that is necessary or expected because the language is large and has a tremendous range of uses, and no one needs all of it for a particular project or focus. But you can most certainly learn all the basics of writing good C++ code, and interop with great C++ libraries and get real stuff done, in fairly short time. It took me about a month to go from Objective-C to C++ and start publishing iOS apps written almost entirely in C++. And if you don't need that, you can start writing command-line utilities in a few days at most.
- cmollis 11y agothis is really true in my experience. I worked on a large server for a few years and most of my work was spent doing pretty mundane things (mostly interfacing with other libraries(apis)). I certainly didn't use every feature and, like you note, most programmers don't. Sometimes I would come across a new C++ capability that was utilized and I would just learn and utilize it, but this depended on the feature and situation. In fact, the only thing that's really different about it (at least to me), was the constant concern over memory usage (and all of the make/build stuff). These are just parts of the language that you need to consider that are avoided in other languages (the dirty secret here is that regardless of the language, you still need to consider them). I liked C/C++ because you can pretty much do anything with it, but you can get to certain points faster with a different language (again, depending on the target usage). Language platforms capture programmer inertia, which is why big companies try to own them. However, in reality, since there are so many, most good programmers seem to be able to switch between them fairly easily (which is a good thing).