My freelancing to date has largely consisted of ML, stream processing, data integrations, microservices, and other backend work. However, more recently I've shifted to include frontend work with react/reflux/react-native/electron and I have run into a high number of issues with development practices. I find myself declining most work for obvious lapses in development practices and, on occasion, "duped" into accepting a client that sounds good on paper but isn't. I have observed a severe lacking in areas like: - Testing (i.e. usually none, which is often spun like an odd pro that they are so "fast") - Devops (e.g. lack of repeatable/automatic deployments, things must be hand-touched, no continuous integration) - Project management (e.g. no tracking of bugs, features, etc via issues, no milestone usage, no documentation) - Git/Github basics (e.g. don't break the branch when doing PRs, create useful commit messages) - Understanding of CSS/HTML basics (e.g. best practices, standards, anti-patterns) - Understanding of React/Flux basics (e.g. child keys, anti-patterns, bastardizing with some weird approach) - Understanding of functional programming basics (e.g. immutablity, HOFs, pure functions) - Understanding of computer science basics (e.g. weird custom approaches that poorly mimic trees, no big-o concerns that hurt perf, memory leaks) - Separation of concerns (e.g. making UI components know about and concerned with the data persistence layer) - Security (e.g. secure credentials committed, pretty much an afterthought) Are these issues simply the norm for frontend development and something I just need to get used to OR is perhaps my frontend network itself poor and something I just need to work on building up to more "solid" clients? I understand few companies are perfect and I am not asking for it all, but coming across clients with lapses in all these areas is what concerns me.