- Full-time
- Part-time
- Temporary
Job Profile
Reporting to the Coordinator of Data & Applications, the Senior Software Developer leads the conception and development of complicated and more in-depth software solutions that harmonize user-centric experiences with robust software design. With an in-depth understanding of user needs and industry trends, the Senior Software Developer crafts intuitive user experiences while designing the underlying technical framework.
Through attention to detail, the Senior Software Developer ensures seamless integration, scalability, and robustness in applications, creating products that captivate users and deliver tangible value. This role involves leading project teams, mentoring junior developers, and collaborating with cross-functional teams to transform concepts into exceptional software solutions and ensures successful application implementation.
This posting is for a SharePoint-focused position responsible for modernizing and supporting enterprise collaboration and content management solutions, including the transition from SharePoint Server 2016 to SharePoint Online. In carrying out these responsibilities, the successful candidate will apply practical experience with tools and technologies used in the City’s SharePoint environment, including SPFx (ReactJS and TypeScript); APIs such as REST, Microsoft Graph, CSOM, and PnP); Azure services such as Function Apps, Key Vault, Logic Apps, and Runbooks; and supporting tools such as Power Automate, Microsoft Entra, ShareGate, LinkFixer, and Muhimbi PDF Converter.
As the Senior Software Developer, you will:
- Lead the implementation and support of complicated and more in-depth commercial and custom applications.
- Assist with the intake and operation of applications enabling departmental services.
- Assist with management of data enabling departmental services.
- Provide technical leadership and subject matter expertise to optimize both software delivery and operational efficiency.
- Facilitate collaboration and effective communication with team members, cross-functional team, stakeholders, business partners, and vendors.
- Implement and maintain robust cybersecurity measures, safeguarding software applications and systems against potential threats and vulnerabilities.
Your education and qualifications include:
- Bachelor’s Degree in Computer Science, Software Engineering or equivalent education and experience.
- PMP, ITIL, Cloud Design, or comparable certifications would be an asset.
- Five years’ working experience in SharePoint application design/architect, development, deployment, integration, and supporting SharePoint solutions life cycle.
- Experience with developing front-end and back-end SharePoint farm including legacy SharePoint Designer workflows and custom .net solutions.
- Expertise in multiple programming languages and technologies including SharePoint and Microsoft 365 technology stack such as SharePoint Server, SharePoint Online, SharePoint Framework, .NET, Power Apps, Power Automate, Azure services and Microsoft Teams integration.
- Experience in analyzing business requirements and proposing software solutions, including cost and timeline estimations.
- Experience in designing, architecting, and delivering scalable and maintainable SharePoint solutions.
- Experience leading technical teams and mentoring team members.
- Knowledge of application management and the SharePoint development life cycle.
- Knowledge of project management and change management methods, practices, and procedures.
- Knowledge of software design patterns, the modern information technology industry best practices, trends, and applications, including low-code platforms, cloud native applications, artificial intelligence and DevSecOps.
- Knowledge of IT infrastructure, architecture, cloud platforms and network security.
- Knowledge of various database systems and ability to design, optimize and interact with databases including SQL Server and Oracle.
- Knowledge of DevOps principles and practices to efficient collaboration between development and operations teams.
- Knowledge of security best practices and ability to implement secure coding principles.
- Knowledge of software testing principles and testing frameworks to ensure the quality of the code.
- Excellent verbal communication skills, including the ability to communicate with all levels of the organization and with external stakeholders.
- Excellent written communication skills including the ability to write politically sensitive and confidential material for senior level staff.
- Strong interpersonal skills with the ability to maintain staff morale, foster, develop, and maintain effective and positive working relationships with teams, partnerships, and alliances.
- Excellent organizational and time management skills with the ability to be flexible and responsive to changing priorities and circumstances as well as the ability to work on diverse projects simultaneously.
- Ability to solve complex problems and optimize software performance.
- Ability to understand customer needs and the ability to lead the team to develop software solutions that meet or exceed those requirements.
- Ability to work effectively in a team, contribute to team goals, lead and collaborate with cross-functional teams.
*IMPORTANT: Applicants who have been educated outside of Canada must have education which is comparable to the minimum qualification in Canada. Applicants submitting foreign credentials require an official academic assessment report issued by a recognized Canadian assessment service https://www.canalliance.org/en/ at application.