|
|
|
|
|
by barrkel
4140 days ago
|
|
Full stack software engineer, to me, means knowing the full stack of abstractions from Javascript / Python / Ruby through C to CPU machine code for at least one architecture. Knowing hardware design isn't particularly relevant to software outside knowledge of how cache associativity works, cache hierarchy, CPU interrupts, page faults, that kind of thing - the API at the CPU architecture level. If you're writing device drivers, you've gone beyond full stack software - you've got to know more about specific hardware. Full stack in practice means knowing where to look on the next layer down when something goes wrong, and having good intuitions about how things behave and how you can expect things to be implemented given what's available. Full stack web engineer is less about depth of abstractions and more about breadth; knowing the browser, a back end language, a database, and enough about system administration to put it all together. |
|