Lead programmer

In software development, a lead programmer is responsible for providing technical guidance and mentorship to a team of software developers. Alternative titles include development lead, technical lead, lead programmer, or lead application developer. When primarily contributing a low-level enterprise software design with focus on the structure of the app, e.g. design patterns, the role would be a software architect (as distinct to the high-level less technical role of solutions architect.)