5 ms·
Many senior devs over the last decade have been created by boot camps. With the recent lay offs the over supply is becoming more apparent. It is now really easy
by HervalFreire 4y ago
Many senior devs over the last decade have been created by boot camps. With the recent lay offs the over supply is becoming more apparent. It is now really easy to hire senior python devs.
Arguably python is so easy that junior devs aren't that far off from senior devs.
- alanfranz 4y agoPurely Python devs, maybe. Start asking questions about Linux, or networking, or security, you won’t find many that can answer.
- HervalFreire 4y agoThis^ is true. Arguably though the majority of web development doesn't involve the stuff you mention. Developers simply work within a framework. This Linux stuff is relegated to specialists... devops or security engineers.
- sirsinsalot 4y ago[flagged]
- HervalFreire 4y ago> As someone who runs a team of Python developers, and has been a professional Python developer for 15+ years, you sound like you don't know what you're talking about. As someone who's done 20 years of professional C++ development along with 15 years of professional python development, as well as 10 years of professional javascript/react development on a systems that go across the stack from the lowest level of sensors and embedded systems to the browser front end I know what I'm talking about. I've also done rust, go, erlang, java, and I've also done a ton of haskell as well as lisp. I've been all over the place likely more than you. >The difference between a junior and senior developer has nothing to do with the language. Regardless of the language the engineering fundamentals are the same. This is beyond wrong. You've done C, you've done rust, then you must know that the fundamentals of systems programming is much more wider ranging then python. What's a pointer? What's a unique pointer or shared pointer? What's move semantics? What's the difference between stack allocation and heap allocation? What's an R value vs. L value? What's a borrowed value? What's virtual memory? What's an interface (arguably with the advent of annotations types are not more relevant in python but there is huge class of senior python programmers who don't use types) The above are programming fundamentals that a python programmer never needs to know. A python programmer can go from junior to principal and not need to KNOW any of the above simply because python abstracts these concepts away from the user. The fact that a python programmer doesn't need to know any of these things makes it significantly easier. For web apps a company is most efficient if they hire a mid level python developer over some principle python developer with 10 years of experience. This is not the case for a language like C++
- ppoint 4y agoI think the point you're missing is that senior engs in Meta do not just write code. Some of the senior engs almost do not write code at all. They design systems and move complex projects forward. So that's more of like a TPM/PM/mgmt skill there, in addition to excellent technical ability to write the code itself. In certain projects, especially in infra, writing code is usually the last part (and often the least complex one) of your avg large project driven by senior ICs; and often the code is written by engs across teams/orgs, not necessarily the senior eng themselves. So yea, deep language knowledge, while an excellent skill, is not something that defines a senior eng (at least in Meta and I presume in similar FAANG companies).
- HervalFreire 4y ago>I think the point you're missing is that senior engs in Meta do not just write code. Some of the senior engs almost do not write code at all. They design systems and move complex projects forward I think your getting off on a different topic. Those guys aren't engineers anymore right? They're more technical managers; or architects. >So yea, deep language knowledge, while an excellent skill, is not something that defines a senior eng (at least in Meta and I presume in similar FAANG companies). I agree with this, but this is not what the others are talking about. The topic right now is about python developers. The more wider range role you're talking about here isn't a person with the title "Senior python software developer." Meta likely doesn't have that title. Additionally, if a company works purely within the python ecosystem of web development, the "architecture" actually doesn't get too complex. Most of this stuff is trivial too, I give it an additional year to learn it. If you're doing stuff with shared memory and utlra low latency applications then it's a completely different scenario, but you wouldn't be working in python if you had that requirement.
- sirsinsalot 4y agoC might have pointers, Python has efficiency gotchas. It might have heap allocation, Python has numpy. Rust might ... Even so, while there _may_ be more technical scope in some languages, or more immediate surface area, this should be true: A senior developer primarily in language Y should be technically capable enough to be senior in language Z with some degree of work. The language isn't relevant. Data structures, engineering mindset, pragmatism, intuition, maths reasoning, abstract thinking, ... These are things that make a senior developer. If I find a Python dev without this skillset at a high level they're not being put in a senior position because they'll add technical debt, cost and risk without even knowing it. They're a liability. Your "senior" Python developers don't sound senior to me. If you think you can promote anyone to senior or principal without the above, you're a liability too. Good job.
- amon22 4y agoSorry but this is nonsense. Juniors can absolutely make a huge mess in python if let to their own devices. You seem to confuse the knowledge of syntax and language features with actual experience in designing software.
- HervalFreire 4y agoLet me spell it out. A junior dev is 1 or 2 years of experience away from a senior dev for python. For C++ it takes probably 4 or 5 years. This is not nonsense. This is real.
- blsapologist42 4y agoBeing a "senior dev" is a lot more than just language familiarity.
- HervalFreire 4y agoIf we're just talking about the python stack arguably there's not much else on top of it. You get the extra stuff through osmosis in the same 1 - 2 years. The applications for python aren't wide ranging enough to include much else unless you're thinking about data science and ML stuff.
- int_19h 4y agoI guess it depends on your definition of "senior", but I don't see why language choice should affect it this much, given that much of what makes seniors senior is not knowledge of specific tech, but experience with software engineering as a process.