7 ms·
I really appreciate this kind of courses. And I would like to see more produced from public institutions. As good as Google or now Amazon courses are, I have se
by Hokusai 6y ago
I really appreciate this kind of courses. And I would like to see more produced from public institutions. As good as Google or now Amazon courses are, I have seen too many colleagues that instead of engineers are Google extperts or Amazon experts and lack a broad view of software engineering.
I love company specific courses to get knowledge that helps my company to evaluate which product to purchase. But, I dread to work with colleagues that invest their curriculum in a company and become radical protectors of that company. Software engineering is more that knowing the API for product A or B.
- heliodor 6y ago> Software engineering is more that knowing the API for product A or B. You're confusing software engineering for computer science. Software engineering on average is indeed knowing the APIs of a few frameworks or products well.
- mesaframe 6y agoNo, that's not software engineering.
- NegatioN 6y agoI'm inclined to agree with you, but I'm guessing OP is referring to "craftsmanship in software engineering", which is probably a mix of both computer science and other habits formed over many years of conscious focus on improvement? One of those habits could be how to generally solve a problem, versus how to just duct-tape together a solution. If we don't understand something from first principles, we don't really understand it in my opinion. I'm lucky to mostly work with people who're both good at their craft, as well as good at "getting the job done". For me personally it would be frustrating to be subjected to massive tech-debt generation and sub-optimal solutions just because the team is unwilling to step outside a walled garden.
- scarface74 6y agoIf we don't understand something from first principles, we don't really understand it in my opinion. How many modern developers have written a single line of assembly yet alone written production assembly code? How many have even written C or used any other language that doesn’t have garbage collection. Everyone who started working on a technology before abstractions make it more accessible think that you really need to understand deeper to be effective. I had to get out of that mode of thinking myself as I’ve been in the software field either as a hobbyist or professionally for 35 years and I did start off writing assembly as a hobbyist (and some as a professional) and spent a decade writing C. But then, I also see the same attitude from old school infrastructure guys now that I live part of my life on that side of the world when they say I really need to understand the “fundamentals” of IT and I can’t possibly be effective as a consultant if my only experience standing up infrastructure is writing a yaml file. At the end of the day not everyone needs to understand the fundamentals to get their work done and create business value no more than your software as a service CRUD developer needs to know how to reverse a binary tree on the whiteboard.
- deleted 6y ago[deleted]
- throw14082020 6y agoI believe you are confusing software engineering with programming
- mongol 6y agoI would rather say that that is what software engineers do, not what software engineering is. I would describe software engineering as a professional discipline, which involves translating requirements to a programmatic system model, writing code, knowing how to test it, build it, deploy it and support it, etc.
- lolinder 6y agoIf what you mean by "on average" is that that is what most people calling themselves software engineers do, that may be true. But framework knowledge is to software engineering what knowledge of tools is to civil engineering. If you're building a dog house or even a shed, that'll be plenty. But I've seen developers try to take a knowledge of framework alone and attempt to build large-scale, business-critical applications, and they tend to come crashing down around their heads.
- scarface74 6y agoCounterpoint: I’ve seen plenty of “smart people” who could reverse a binary tree on a whiteboard in their sleep, wasted hours writing a maintaining their own bespoke frameworks because they thought that their problem was a special snowflake and couldn’t deliver business value that met customer’s needs to save their life. Part of my role at my last two companies was to know what to outsource and what to build internally and when to outsource the grunt work - ie decide what “the undifferentiated heavy lifting” was.
- lolinder 6y agoAbsolutely yes. I don't think that raw computer science is what most software engineers need. But it's also a lot more than framework knowledge. What is missing in most developers' educations is the actual engineering. If civil engineering is applied physics, then our discipline is applied computer science. A physicist might be a terrible civil engineer. Plenty of computer scientists are terrible software engineers. But that no more means we need to neglect the computer science then it means that civil engineers should neglect physics.
- crispyambulance 6y agoThese building analogies only go so far, I think. There are many different ways that people master a profession, and sure, in the best of all possible worlds people would learn under the guidance of expert mentors who supply "guard-rails" for the work of people they mentor. In reality, however, that's not always possible. Many of us don't have the benefit of a safety net or benevolent deity, we just wing it, fail, learn, and try again. It's not always pretty, but it works, eventually. Someone who is a Dunning-Kruger poster-boy one year may very well become your MVP a couple years later. If people don't push the limits of their capabilities (which often means failure), they'll not be able to grow.
- zmmmmm 6y ago> Software engineering on average is indeed knowing the APIs of a few frameworks or products well. I actually would have said that is the main thing that distinguishes a "programmer" from both a "computer scientist" and a "software engineer". Programmers are the tradespeople who know the APIs. Computer scientists know the science of the algorithms. Engineers know the design principles and systematic methodologies to apply them in practice successfully (independent of specific APIs). Of course, all this is blurred in practice.
- jonplackett 6y agoCan anyone recommend a good unbranded alternative?
- save_ferris 6y ago> I would like to see more produced from public institutions. I understand this sentiment, but I also don’t think it’s very realistic to expect this based on how much more money people make working in industry vs education. I was once interested in teaching at a software engineering school and the money offered wasn’t even close to being competitive with what I was earning as a full-time developer. There’s just no way education for the sake of education can compete with programs put on by these companies that have established business models and practices. Why would experts at FB/GOOG/AZN leave those opportunities to go build curriculum at public institutions for a fraction of what they make as ML experts at these companies?
- panpanna 6y ago> I have seen too many colleagues that instead of engineers are Google extperts or Amazon experts and lack a broad view of software engineering. Maybe that's the key to quick success? Because I know tons of well paid frontend devs that do not understand even the most basic web technologies. They are however good in using 2-3 specific frameworks.
- mytaw257 6y agoYes yes and everyone has seen a back end dev that thinks they are gods gift but really over engineers everything to trash and doesn't understand the front end nearly as well as they claim. Back end shit talkers are the worst kind of gatekeepers because you think the problem is only on one end of the stack and you don't look ast yourselves or your back end colleagues enough because just as many are dumbass charlatans This is about non devs, not front end devs that you ddont like you baby. Let's all pick apart the back end tech that you missed anddd call you a retard!