Working within an Agile environment, the Lead Full Stack 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.
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.
8+ 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 patterns and pragmatic programming principles.
Experience with CMS considered a strong asset.
Expertise with nServiceBus and Rabbit MQ 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.