I think that&#x27;s fine for developers starting out. But once you start writing software professionally that is for &quot;the enterprise&quot;, it&#x27;s important to understand the underlying stack. Knowing how your kernel&#x27;s plumbing of pipes actually works (for example) is invaluable in certain cases. Knowing how your framework&#x27;s black boxes work is very useful when you run into performance problems or find bugs. Yes, abstractions are good. But the higher you go up the stack of abstractions, the less you know about what&#x27;s actually happening and thus the less you&#x27;ll be able to do to actually debug it.<p>EDIT: Sorry, I didn&#x27;t read the OP. Yeah, his requirements don&#x27;t make much sense (unless he can do the whole industry a favour and explain what he means by &quot;full stack&quot; developer).