C++ back-end first approach