Reporting to the Manager, Information Architecture, this software developer role will participate in development projects and work closely with the IT Systems team to provide software solutions. The Software Developer II will design, implement and maintain software programs in support of business and educational delivery needs at CNC . The software developer II will design software solutions while assisting with the upkeep of the catalogue of custom developed and third-party software to maintain high business value, ensure information security, and to ensure interoperability between various systems.
Specific Duties
Builds software modules in support of development projects and in alignment with specifications created by the Software Developer III
Designs web, desktop and console applications in support of business and educational delivery requirements and in alignment with IT Services architectural goals
Writes efficient and maintainable code, markup and queries to build software applications
Performs code reviews to assess quality and provide feedback
Plan and coordinate testing, changes, upgrades, and deployments to fulfill specified requirements
Manages and curates CNC software code repository ensuring that documentation, versioning and changes are managed according to best practices
Trains users on newly developed software
Perform database administration such as security configuration, backup restoration, and creation of maintenance plans
Create, maintain, and troubleshoot complex, multi-table SQL queries making use of aggregation, sub-queries, functions and other advanced SQL features
Make changes to data structures, SQL queries, application logic, or the DBMS subsystem to optimize performance
Identifies areas for improvement within existing programs and subsequently implements those improvements
Design and develop information systems based on supplied process diagrams and documented requirements
Advocates for the use of available information technology to automate and standardize business practices
Performs analysis of processes and procedures to produce recommendations with the goal of better fulfilling operational needs
Ensures the confidentiality, security, and stewardship of data, including compliance with freedom of information and protection of privacy legislation
Leverage industry standard security practices to secure information systems and applications
Participate on committees and working groups as a subject matter expert
Enterprise systems user account management activities, such as setting up user accounts and passwords, and retrieving user information
Troubleshoot simple network issues using tools such as nslookup, ping, tracert, and ipconfig
You will be part of a team actively engaged in contributing to and accomplishing the vision, mission, and goals of the College and in supporting the aspirations and needs of our learners.
You will promote a positive work atmosphere by interacting and communicating in a professional manner that demonstrates mutual respect with students and colleagues.
Perform other related duties as assigned.
Skills & Qualifications
Bachelor’s degree (or higher) specializing in Computer Science or Software Engineering from a recognized institution.
2 years or more Minimum of two years current experience in software design and development or equivalent education and experience.
Experience in post-secondary education or the public sector is preferred
Experience using Microsoft development and web tools such as Visual Studio, SQL Server Management Studio, and Microsoft Internet Information Server
Experience with ASP .Net, C#, Razor pages, Blazor pages, ASP .Net Web APIs, Javascript, CSS , JQuery and Knockout.js
Understanding of Azure AD and Azure development tools
Understanding of external tables, triggers, database links, indexing, and sub-queries in Microsoft SQL Server databases
Understanding of high availability concepts like clustering, load balancing and hot standby databases
Understanding of Azure app registration
Ability to read and execute basic shell scripts such as batch files and PowerShell to automate administrative tasks
Ability to use source control to resolve conflicts and revert changes
Understand how content management systems work (eg. Sitefinity)
Familiarity with structured approaches to system configuration management
Ability to apply risk management practices
Ability to interpret systems diagrams and models
Understanding of network concepts and terminology like connections, sessions, sockets, packets, IP address assignment, gateways, and DNS
Troubleshoot performance problems through advanced techniques like tracing, wait state analysis, network and storage performance analysis
Ability to provide assistance and advice to less experienced members of your team
Ability to prepare and distribute progress reports
Experience leading projects
Demonstrated commitment to service excellence and teamwork
Ability to work effectively and cooperatively with a diverse group of individuals or departments
Excellent communication skills, both written and verbal
How strong is your resume?
Upload your resume and get feedback from our expert to help land this job
How strong is your resume?
Upload your resume and get feedback from our expert to help land this job