3 ms·
I'm a software developer who's led some embedded development projects in the past, and I definitely know where you're coming from. There are hardware developers
by iainmerrick 3y ago
I'm a software developer who's led some embedded development projects in the past, and I definitely know where you're coming from. There are hardware developers who are fantastic at some parts of software development, but other parts require totally different skills.
In my projects, where we partly used DSPs and software-defined radio, I found that the hardware guys could be amazing at writing neat modules of DSP assembly, with carefully benchmarked time and space usage. I felt that they thought "hey, software is easy, it's just wiring a bunch of filters together!" But for anything requiring more sophisticated architecture (like interpreting an EPG embedded in the data stream) they wrote spaghetti code.
Often their stuff would be nice and terse, so it could look good at first glance if you didn't really understand software. Some parts would be efficient but buggy; other parts would be correct but with terrible scaling or arbitrary size limits.
Similarly, I'm sure if I tried to get involved in hardware, and confidently thought "this is easy, it's just wiring a bunch of functions together!", I might get some of the small stuff right, but the actual higher-level hardware architecture would be equally terrible.
- Vanit 3y agoThis is reminding me of similar issues I've had with engineers that have been stuck in the backend bubble too long. They seem to operate in a constraint free environment and it's other devs who have to live with the awkward limitations the backend dev thought "is the right way".
- bob1029 3y agoYou can solve this problem by performing schema design with stakeholders in the loop. If everyone agrees upon the tables/columns/relations ahead of time, then constraints can be enforced before any code is touched.
- wellanyway 3y agoBackend bubble as opposed to what? JS apps that require 6 gigabybes to render some text?