Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm sorry, but if architect cannot make some concrete, i.e. he doesn't know basics of his profession, what you expect from him? A house?

Yes, you can hire him, but that will cost you lot of money. There are tons of examples of cheap architect work, e.g. collapsed bridges in the Western Europe.



I seriously wonder about the proportion of architects who ever mixed any concrete themselves in their lives.

Seriously, almost no developer would be able to write a compiler today. The same way I wouldn't be able to build a micro-processor worth anything.

You wouldn't expect any compiler knowledge from most web (back or front) developers, the same way you wouldn't expect much GUI or globally distributed consistent databases knowledge or experience from most embedded developers.

And it's just fine. It's their problem, their limitation, their career, them missing out and, no, in most cases, it won't impact their jobs or the quality of what they make in any way.

Why do you have to have a problem with that ?

Edit: also, bridges collapse all over the world. Tunnels too.


I'm software developer (backend, fronted, cloud, embedded, etc), but it's often very helpful to know how hardware works, how processor works, how kernel works, how compiler works, how network works, and so on, because it's allow me to make my abstraction at top of all these layers to work much more efficient. It's not expected that I will be expert in all that, but it's expected that I will know basics, so I will not make noob mistakes. Are you expecting noob mistakes from architect, which made your home? Or it's ok if he made mistakes in someone else home or bridge?


I'm a software developer too. Mostly mobile and backend.

On the mobile part, most of the clients have pretty much no idea what a processor really is, or how networks work. Hell, I have to explain to them that if they want to build this kittens social network, they're going to need a back-end and that no, it doesn't matter to the mobile apps what language their back-end is written in (and vice-versa).

For most of what these people ask, all you need to know are the basics of Android and iOS's SDKs and how to make API calls. Half the time, their isn't even any networking involved !

I'd be thrilled to work in an environment where this kind of knowledge matters. But like most people I'm stuck working with some people who'll tell you that they don't want to be software developers; it's just a means to an end to them (which is fine. Just don't use that as a shoddy excuse for doing crap), refactoring codebases built by some kids who don't have any software architecture knowledge and don't see the problem in their network layers popping modals and alerts, wondering how on earth a view could end up being a singleton (and no, "I was somehow convinced I needed to access it and change it's properties from this class over there" is not a satisfactory answer) or spend half my day on a single rebase because of some git submodule crap.

So yeah, for most of the people I've had the 'delight' of working with, they are missing so much that no, hardware intricacies, processors inner working, compilers logic and functioning or networking knowledge aren't the critical aspects they're missing.

Heck, I'd be glad if their code was even just readable and had anything resembling an architecture. Or if they didn't turn everything and anything into a singleton whenever they felt like it.

I'm going to stop now. But going back to the architects analogy, if these developers where architects, then most of those I've met can't tell the difference between plumbing and electrical wiring, so I'd be glad if they left the concrete to the craftsmen and at least managed the basics of their jobs' specifics.


Software scientist != software/hardware engineer != software/hardware developer != programmer/coder.

Programmer must know how to program.

Software developer must know how to make good software product.

Software engineer must know how to understand and meet specifications, follow engineering codex, and son on.

And so on.

I'm talking about software developers. You are showing me examples unrelated to professional software product development at all. Moreover, there are lot of professionals in IT, but only part of them are software developers.

So we are just talking about different things: you are talking about "someone who sits in front in compute and enters programming code", while I'm talking about professional Software Developer, short segment of IT professionals, subset of programmers.


You are pretty much making my point, you know that, right ?

I'm talking about people who are one of the or the only persons with any technical knowledge in their companies, who's job it is to interpret and understand whatever the requirements are and deliver on the products, wether it's apps, web or mobile, back-ends or both.

They need to know how to make good software products, they definitely should know how to understand and meet specifications, etc, etc, etc. They just don't. And yet, they have the positions they have. And what they're most lacking, contrary to the point you were making earlier, definitely isn't compiler theory or the ability to build shell scripting parsers, but the very abilities you just listed.

So no, we are talking about the exact same thing, you just seem lucky enough not to have encountered this kind of people in that kind of position, and I'm glad we have finally come to an understanding.


Of course, I know such people. They are called "anykeyers" in my country. And of course, they are not software developers or software engineers.

If they have no education/training adequate to their profession, they are just amateurs. I trained about few dozens of them during my career.

We have outsourcing industry in Ukraine, so "Software Developer" is well defined term here. Somebody cannot sit five years playing with Excel, or JS/HTML, or mobile apps and then pretend for Senior Developer salary. Inexperienced (junior) developers causes lots of problems to project and must be supervised by a senior developer. We work on tight budgets, so we have no time to play name games. If someone has "developer" in his title, he must meet expectations for his role. Otherwise, project will collapse and everyone will suffer.




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

Search: