4 ms·
> Unfortunately, the kinds of projects where technical excellence is legitimately required and rewarded are relatively rare. I find that this really depends o
by pm90 8y ago
> Unfortunately, the kinds of projects where technical excellence is legitimately required and rewarded are relatively rare.
I find that this really depends on the situation one is in. Its true that building a CRUD app may not really require excellent technical skills, but building a highly available app that can be updated without outages, able to serve traffic in sometimes strange patterns (e.g. Lyft's traffic pattern v/s Walmart's) while being resource-efficient is still a challenge.
I'm still astonished at how much interesting, practical innovation continues to happen in our Industry. I somehow assumed that once things got standardized around certain environments, interesting things to do would stop. That has not yet happened and I am very grateful for it.
- crispyambulance 8y agoI see the word "CRUD app" thrown around here like it's always a triviality. That's only true in textbook exercises. CRUD is almost NEVER trivial in real life, especially in enterprise environments. Aside from the fact that each of those letters in the acronym may have arbitrarily complex requirements and challenges behind it. There are _REAL_ organizational problems of getting the application designed, implemented, approved. And there's training, deployment, lifespan maintenance and decommissioning. I mean, sure, many enterprise apps look like they were designed by an institutionalized autist in 1995 (cough... Oracle EBS) and these _ARE_ CRUD apps. Wanna be an ERP software billionaire? Beat the crap out of Oracle, SAP, Siemens, etc. Come on, they're just "CRUD" apps.
- rusk 8y agoI had to cringe there a while ago, when a customer came back from a conference said he was talking to xyz CEO who told him "it's just a CRUD app" and how could it possibly be so difficult, and then proceeded to hand me his requirements in video presentation format.
- riazrizvi 8y agoCRUD apps might require business domain knowledge and good process logic but they don’t stretch your architectural skills, they don’t stretch your systems skills, nor your language skills. This is because most CRUD applications generally boil down to 1) data IO plumbing/scripts 2) SQL and DB architecture, 3) reporting. The pure technical aspects can be mastered in a few years. They are not a route to becoming a brilliant software engineer.
- dasil003 8y agoSure for some no-true-Scotsman definition of “CRUD app” this is 100% true. However even for the most boring CRUD app there is still unlimited applicability of intelligence and skill to build the right thing balancing speed of delivery, performance, UX, maintainability, and requirements compromise for simplicity. Doing this well is a path to business success far broader than winning a dick-measuring contest at FANG.
- riazrizvi 8y agoNo one is saying CRUD developers are not smart. It sure takes intelligence to build good CRUD processes. Each one is a slice of a business process. Goodness knows you can spend many lifetimes doing that, and you would accumulate more and more business process know-how. That’s very valuable, and can be very highly rewarded, especially if you are the only person who understands it well. But like I said your software knowledge would quickly plateau, compared to someone who is building new green field applications that are more broad. This is just my perspective after 25 years of doing both types of work and seeing what effect they each have on your technology skills over a ten+ year period.
- dasil003 8y agoMy problem—hinted at in my opening sentence—is that "CRUD app" has become a vague pejorative with no clear definition. All software reads and writes, there is some hand-wavy sense that software becomes interesting when it has massive scale, or in interesting domains, or embedded, or has tight performance constraints, etc. But what is actually "boring CRUD", it ranges between 5-99.9% of all software depending who you ask.
- cryptonector 8y ago> CRUD apps ... don’t stretch your architectural skills, they don’t stretch your systems skills, nor your language skills. then > This is because most CRUD applications generally boil down to ... 2) SQL and DB architecture, ... Hmm? Do CRUD apps, in your opinion, involve architecture or not? I can't tell what your position is. In any case, CRUD is generally used to mean "RESTful", which basically means you have an HTTP API on top of the app. Some cases I've seen started with trivial underlying NoSQL DBs, and then grew insanely complex. That's architecture right there. Even if you start with SQL, if you don't know the language and how to model the data effectively, then chances are you'll end up in a world of hurt.