3 ms·
tl;dr: I've seen so much quibbling about what a full stack engineer really is, and it often seems to conclude with the idea that a "true" full stack engineer do
by benjamincburns 13y ago
tl;dr: I've seen so much quibbling about what a full stack engineer really is, and it often seems to conclude with the idea that a "true" full stack engineer doesn't exist. It's not that we don't exist. It's that the actual market for us is tiny.
In terms of layers of abstraction I've worked professionally from one step above the silicon (digital/analog circuit design and FPGAs) to domanin-specific language design. I refer to myself as a "seriously full stack" software developer.
As an example I once wrote a device management framework which would allow you, in a short single line of C, to expose a REST interface to a getter function and a setter function for an arbitrary value to a device's management page. The management page would query the device's embedded HTTP server for its configuration schema (generated with the help of type info and "hint" flags from that single line of C), and render a very pretty, very usable hierarchy of AJAX forms to administer the device.
This was written to serve as a configuration mechanism for a computer vision sensor (networked or individual units) for which I helped design the circuit (both logic and power), ported uBoot, ported the Linux kernel, ported the Angström distribution userspace (not as much effort as it sounds thanks to OpenEmbedded), wrote and/or debugged a myriad of drivers (camera, NAND flash, filesystem), designed the application-level architecture, helped with vision algorithm optimization, integrated MPEG4 video streaming, and built all of the (surprisingly snazzy) user interfaces.
I did this work over the course of a year as a member of a core 4-person team with additional help from 8-10 other people who served in various shared support roles. As teammates we all had our unique preferences, talents, and thought processes, but only our Electrical Engineer was somewhat specialized.
The problem for people like me is that it's exceedingly rare that I get to actually flex my true generalist muscle. I'd bet anything that the team on which I worked was faster and far cheaper than any larger, more specialized team competing in the same space. But how many companies are actually willing to take the risk on a team like this? Of those companies, how hard is it for them to put together this kind of team? How many really have the leadership talent necessary to do so?
Edits:
Restructured so I'm making my overall point in the first paragraph rather than the last