4 ms·
From talking with hiring managers and upper-level managers & executives across many different startups and big companies, there's an important caveat to "The bi
by elevenfist 11y ago
From talking with hiring managers and upper-level managers & executives across many different startups and big companies, there's an important caveat to "The big picture is not going to change."
Application engineering is getting easier and easier to the point where people no longer need a degree or even extensive training to be able to do application engineering work. Employers are aware of this, startups especially, and often prefer unskilled individuals (or people with only domain expertise) who are willing to work extra hard to teach themselves the skills on the job. They often pay these people less as well. This was explicitly stated as a good strategy by a ycombinator partner, and the executives of several successful, well-known, mid-size companies.
Honestly I hope this isn't true, maybe someone else can shed some light on this.
What will change is who is doing the work, how many people are employed, and how much they're compensated for their work.
I also want to mention that a number of my friends have gotten job offers from Google, and they're much lower than the offers other friends received just a year ago for similar positions (at least $20k less).
- jaegerpicker 11y agoHonestly this isn't even close to true. It's can seem that way if all you look at is startups that fail fairly early on but the vast majority of startups that grow beyond the early prototype stage end up rewriting the app using solid engineering principles or they fold under the load. That requires people who really know what they are doing. Is it easier to prototype an app now? Certainly. Is it easier to build a scalable stable app now? No, not really at all. It's not breaking new ground anymore but it certainly requires a great deal of experience and hard earned knowledge to get there.
- MichaelGG 11y ago>. Is it easier to build a scalable stable app now? No, not really at all. What? It's vastly easier. 10 years ago, you'd often buy servers. Getting a HA DB required a bit of knowledge (especially if you weren't using SQL Server's easy cluster stuff). Backups were another hassle. Now? Click "New Database" and select a performance and HA level. Done. Look at StackExchange - they just scaled the DB up cause RAM is cheap enough to put a TB in a server. That's vastly easier than dealing with scaling out. And even to scale out, "cloud" DBs like SQL Azure have sharding and auto-scale built-in. On top of that, servers are MUCH faster. Look at the RPS that some sites are claiming. They simply aren't that high. 1000 RPS? 10 years ago that required some planning. Now, so long you don't do dumb things, it's not an issue. (Source: I ran a system that did hundreds of millions of transactions a day, and the hardware requirements were rather light. Each transaction ended up in an ACID DB UPDATE, in addition to archival, auditing, HTTP requests, etc.) It's simply incorrect to say it's not easier to scale today. It is.
- bbcbasic 11y ago10 years ago expectations were lower too though.
- vezzy-fnord 11y agoWe've had RAD toolkits and other highly abstracted application toolkits geared towards ease of use for quite long now. HyperCard, PowerBuilder, Visual Basic... you could probably even throw in the Smalltalk environments in there to some extent. The difference is that computer networking has become more seamless and ubiquitous, and so the process that you describe of hiring unskilled (by traditional measures) workers doing domain-specific programming work for low pay has become a more rational one to do, because of information accessibility.
- gizi 11y agoApplication engineering is getting easier and easier to the point where people no longer need a degree or even extensive training to be able to do application engineering work. There has never been a positive correlation between the ability to build/maintain applications and having a degree or going through extensive training. The job has always and will always consist in learning things by yourself, as and when you need them. If someone needs hand-holding in order to learn a new language, a new API, a new tool, or anything else that we use, he is simply not suitable for the job. You cannot count on receiving "training", because with relatively new technology, there may initially not even be any training around. In other words, there is rather a negative correlation between seeking knowledge in degrees or extensive training, and the ability to do the job. The person may simply never have learned to figure things out by himself. This would entirely disqualify him for the job. Furthermore, application engineering is only getting easier and easier for a certain group of people. For everybody else, it is getting more and more difficult.