Lead programmer

From Wikipedia, the free encyclopedia

A lead programmer is a software engineer in charge of one or more software projects. Alternative titles include Development Lead, Technical Lead, Senior Software Engineer, Software Design Engineer Lead (SDE Lead), Software Manager, or Senior Applications Developer. When primarily contributing in a high-level enterprise software design role, the title Software Architect (or similar) is often used. All of these titles can have different meanings depending on the context.

[edit] Responsibilities

A lead programmer's exact responsibilities vary from company to company, but in general he or she is responsible for the underlying architecture for the software program, as well as for overseeing the work being done by any other software engineers working on the project. A lead programmer will typically also act as a mentor for new or lower-level software developers or programmers, as well as for all the members on the development team.

Although the responsibilities are primarily technical, lead programmers also generally serve as an interface between the programmers and management and have supervisorial responsibilities in delegating work and ensuring that software projects come in on time and under budget. Lead programmers also serve as technical advisers to management and provide programming perspective on requirements. Typically a lead programmer will oversee a development team of between two and ten programmers, with three to five often considered the ideal size. Teams larger than ten programmers tend to become unmanageable without additional structure. A lead programmer normally reports to a manager with overall project or section responsibility, such as a director or product unit manager (PUM).

[edit] Qualifications

Lead programmers are usually trained in software programming, although many do not have formal degrees in the subject, and learn management responsibilities either on the job or through short courses. Because their primary training is technical rather than managerial, lead programmers tend to be seen and to see themselves as part of the technical staff of a company rather than as part of management. This cultural identification is valuable, since subordinate programmers will tend to not take direction from someone perceived as lacking in technical skills.

[edit] Famous lead programmers

Lead programmers often spend their careers mired in obscurity. Some have, however, broken the mold and have, through some ground-breaking work, become internationally famous. Some renowned lead programmers include:

Languages