You know, there's just so much. I've been at it four years and I still feel like a damn newbie.<p>Gotta know your linux, your scripting, vagrant, docker, salt, git, testing, continuous integration, editor(evil + emacs in my case), algorithms, datastructures, best practices, libraries you are currently using, sql, how servers work, how the web works, memory management, and on and on and on.<p>On top of that, synthesize all of the above into something usable and maintainable, then maintain it. I'm starting to suspect the day I have a good grasp of the basics is the day I become a master.