Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Lead programmer
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Multiple issues| {{refimprove|date=June 2019}} {{Unreliable sources|date=October 2020}} }} In [[software development]], a '''lead programmer''' is responsible for providing technical guidance and [[mentorship]] to a team of [[Programmer|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]]''.) ==Responsibilities== A lead programmer has responsibilities which may vary from company to company, but in general is responsible for overseeing the work, in a technical sense, of a team of software developers working on a project, ensuring work meets the technical requirements, such as [[coding conventions]], set by the [[software architect]] responsible for the underlying [[Software architecture|architecture]].<ref>{{cite web |title=So you want to be a Tech Lead⦠|date=10 March 2020 |url=https://levelup.gitconnected.com/so-you-want-to-be-a-tech-lead-1d8261e36736 |access-date=22 Oct 2020}}</ref> A lead programmer's duties are often "hands on", meaning they typically write software code on a daily basis, assisting their team to meet deadlines and improve the quality of the codebase. They act as a [[mentorship|mentor]] for new or lower-level software developers or [[programmer]]s, as well as for all the members on the development team, primarily through processes such as [[pair programming]], conducting of [[code_review| code reviews]], promoting good development principles, such as [[test-driven development]], and taking the lead in correcting code defects.<ref>{{cite web |title=5 responsibilities of a Tech Lead and 17 metrics to track their performance |date=21 May 2020 |url=https://sourcelevel.io/blog/5-responsibilities-of-a-tech-lead-and-17-metrics-to-track-their-performance |access-date=22 Oct 2020}}</ref> Although the responsibilities are primarily technical, lead programmer also generally serve as an interface between the programmers and management, have ownership of their team's development plans and have supervisorial responsibilities in delegating work.<ref>{{cite web |title=What's The Difference Between A Senior And Lead Developer? |url=https://dev.to/jamesmh/whats-the-difference-between-a-senior-and-lead-developer-1pl2 |access-date=22 Oct 2020}}</ref> They ensure that sections of software projects come in on time and under budget, and assisting technically with hiring and reviewing performance of staff. 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.<ref>{{cite web |title=A Guide to Technical Leads: What They Do and How to Become One |url=https://www.indeed.com/career-advice/finding-a-job/technical-lead |access-date=22 Oct 2020}}</ref><ref>{{cite web |title=Technical Lead |url=https://www.seek.com.au/career-advice/role/technical-lead |access-date=22 Oct 2020}}</ref> A lead programmer typically reports to a principal who manages a number of teams. Technical direction may be provided by a software architect. Where teams follow the [[Waterfall model|waterfall]], [[extreme programming]], or [[kanban]] approaches, the lead programmer is referred to as an ''engineering manager'', or a ''software development manager'', and collaborates directly with a peer, the ''product owner'', who gathers the customer requirements that the end product must meet. In a true Agile approach, the lead programmer collaborates with a separate position of [[scrum master]], who acts as an intermediary seeking a compromise between business demand (product owner) and team capacity and skillset, e.g. which ''story'' tickets from the ''product backlog'' will be passed into the next [[Agile_software_development|Agile]] ''sprint''. == References == {{Reflist}} [[Category:People in information technology| Lead programmer]] [[Category:Software project management]]
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Templates used on this page:
Template:Cite web
(
edit
)
Template:Multiple issues
(
edit
)
Template:Reflist
(
edit
)
Search
Search
Editing
Lead programmer
Add topic