Lead Developer

Purpose:

Working within an Agile environment, the Lead Developer uses their leadership, technical & organizational expertise to lead a development project team in ensuring successful delivery of software components and deliverables. The Lead Developer is the primary contact for PM', BA's & EA's and oversees the career development of the developers within the team.  Previous experience leading a team is useful. 

 

Key Accountabilities:

  • Leads the development of technology solutions which utilizes PNI's processes, templates, best practices and standards to maximize reliability, functionality, and integrity while minimizing costs and cycle time.
  • Works with the Development Manager, Enterprise Architects and Senior Developers to facilitate the architecture and design of the solutions.
  • Consults with the Enterprise Architects as required resolving any issues.
  • Leads the development team to design and implement the architectural vision.
  • Mentors and coaches developers in their career progression.
  • Drives problem determination and resolution.
  • Ensures PM's have accurate technical advice, assessments and estimates form development team.
  • Assists in transfer of business and technology knowledge.
  • Promotes team effectiveness by removing technical blockers.
  • Communicates with all areas to ensure a smooth efficient process.
  • Reports status to PM on a regular basis.
  • Consults with others to solve problems when required.
  • Participates in regular Lead Developer meetings and ensures others are aware of technical successes & innovations.
  • Communicates outcomes of Lead Developer meetings to development team.
  • Participates in Product demos.
  • Schedules & participates in code and design reviews.
  • On a weekly basis updates Development Manager on project timelines, progress and any outstanding issues needing resolution.

Experience & Skills Required:

  • Post-secondary degree/diploma in Computer Science or equivalent.
  • 7+ years' experience in (web)-application development utilizing C#.NET in Visual Studio.
  • 5+ years' experience in relational database development utilizing Microsoft SQL Server.
  • 3+ years' experience with software version management systems (e.g. Perforce) and task/bug tracking software (e.g. JIRA).
  • 2+ years in leadership role.
  • Previous experience managing, coaching and leading development teams.
  • Demonstrated working experience in an Agile / SCRUM development environment.
  • Experience with technologies such as MVC, ORM, IOC, etc.
  • Excellent understanding of and some experience using Test Driven Development.
  • Deep understanding of object-oriented design patters and pragmatic programming principles.
  • Experience with CMS considered a strong asset.
  • Expertise with nServiceBus and Rabbit MQ considered a strong asset.
  • Hands on Experience with ASP.Net Forms and MVC, JavaScript and WCF considered a strong asset.
  • Experience with high-performance, scalable enterprise systems would be a strong asset.
  • Real experience (at least 5 years) with large design efforts, enterprise level deployment, and n-tier architecture.
  • Experience with Domain Driven Design is an asset.
  • Excellent English communication skills, attention to detail and organizational skills.
  • Experience in tight deadline, high pressure environment.