Lead Programmer
What we're looking for...
We're seeking a lead programmer for a new, growing technical team. This person will both manage the team members on a human level, as well as make key technical decisions on the project.
About the job
The lead programmer will manage a remote programming team on a growing project. They must energize the team, maintain forward momentum, structure working processes, drive initiatives, lead hiring of new members, and smoothly communicate difficult and complex information to the group and individuals.
The lead programmer must also lead the technical efforts on the project itself. They will make key decisions on architecture, middleware, and process. They will also help team members handle tricky bugs and technical challenges. Finally, they will write their own code.
The lead programmer will work under a project director, and alongside other department leads.
Key responsibilities:
Manage daily technical work to keep up velocity and code standards. Keep the team energized and moving forward effectively.
Review C# code and give great advice. Consult on hard technical problems with team members.
Incept, drive, and evangelize processes for managing tasks, reviewing, testing, and more.
Architect key systems and write key code.
Help other programmers learn.
Hire and fire programmers as necessary. Recommend when this is necessary.
Directly handle team problems like process breakdown or productivity falling off.
Coordinate efforts with the project directors and leads of other departments.
Help shape the overall design and direction of the project.
Requirements:
High energy, focus, and motivation. You must generate energy for a whole team, pushing people forward and setting aggressively high standards. You must be a fountain of motivation and discipline.
Strong ability to manage team members at the human level. Understand what people want, how they feel, and how to talk to them. Know when to hire, and when to fire, and be able to make hard choices and have hard conversations effectively. Don't shy away from stress when it's necessary.
Broad and deep technical knowledge. Know the tech inside and out, top to bottom. Be excellent at narrow code details as well as broad architectures. Know of our tech and the broader tech universe.
Substantial experience leading complex technical efforts, with a focus on managing other programmers.
Understand optimization. Strong knowledge of data structures, optimization techniques, memory management, algorithms, time/memory complexity, and the best techniques for writing clean and maintainable code in C-like languages.
Note: We generally start with a 1-3 month trial contract.
Apply for the job
Do you want to lead our tech team on a growing project with massive potential? Then we'd love to hear from you!
