I don't see how supposing every devOps specialist is replaceable by average engineers is a real solution.
I don't see how supposing every devOps specialist is replaceable by average engineers is a real solution.
The beauty of Docker is that it, to some extent, does turn average engineers into devops specialists. They just specialize in a very specific, somewhat abstract/virtual environment. Then the real devops specialists can write tooling around that virtual environment that doesn't require detailed knowledge of what's inside the black box. It's an interface between application and deployment engineers that obviates the need to coordinate on deployment process.
[1] When learning, reinvent all the wheels.
Use MongoDB for all your pet projects, all your development. Joining data from documents is good way to learn where SQL came from.
Just don't do it in production before you master it.