Responsibilities
Required to translate technical systems specifications into working, tested applications. This includes:
- Developing detailed programming specifications o writing and/or generating code o compiling data-driven programs, maintaining, and conducting unit tests.
- Analyzes, designs, develops, codes and implements programs in one or more programming languages, for Web and Rich Internet Applications
- Supports applications with an understanding of system integration, test planning, scripting, and troubleshooting
- Designs and develops REST API platform (e.g., with using Apigee/APIM)
- Converts web services from SOAP to REST or vice-versa
- Resolves and troubleshoots technical problems which arise during the use and operation of software packages, including technical assistance in implementation, conversion and migrations.
General Skills
- Experience in programming and analysis; specialized software package support at the specified experience level
- Ability to collaborate with IT Professionals throughout the Software Development Life Cycle
- Experience in structured methodologies for the development, design, implementation and maintenance of applications
- Experience in design, code, test, debug and document applications
- Experience in the use of object and/or third generation language development tools
- Experience in one or more programming languages
- Experience in application design, latest design patters, deployment and troubleshooting
- Experience with relational and hierarchical database technologies
- Experience in the use of information retrieval packages using query languages
- Experience with one or more communications protocols
- Experience in structured methodologies for the design, development, implementation and maintenance of applications
- Experience eliciting and documenting information from diverse business area stakeholders and subject matter experts
- Excellent analytical, problem-solving and decision-making skills; verbal and written communication skills; interpersonal and negotiation skills
- A team player with a track record for meeting deadlines API Skills
- Experience with Web Technologies (DHTML, AJAX, etc.)
- Experience with Security frameworks (e.g., JWT, OATH2)
- Experience in API layer like security, custom analytics, throttling, caching, logging, monetization,
- request and response modifications etc. using Apigee
- Experience in creating REST API documentation using Swagger and YAML or similar tools desirable
- Experience with Integration frameworks (e.g., Mule, Camel) desirable
Desirable Skills
- Knowledge and experience with programming Internet-ready applications
- Knowledge and experience in rapid application development (RAD) methodologies
- Knowledge and understanding of Information Management principles, concepts, policies and practices
- Experience with middleware and gateways
- Experience reviewing, analyzing, and modifying product installation scripts including encoding, testing, debugging
- Ability to provide post-implementation support and resolve any post-implementation technical issues
- Experience conducting design walkthrough sessions with project team
- Knowledge and understanding of Accessibility for Ontarians with Disability Act (AODA) and related regulations and standards
- Ability to provide user and system documentation as required.
Requirements
Experience and Skill Set Requirements
Experience (30%)
- Experience in programming and analysis; specialized software package support at the specified experience level
- Ability to collaborate with IT Professionals throughout the Software Development Life Cycle
- Experience in structured methodologies such as Agile Scrum for the development, design, implementation, and maintenance of applications
- At least 4 years of C#
- At least 3 years of .NET Core or .NET 5+
- At least 3 years of ASP.NET MVC
- At least 3 years of ASP.NET Web API
- At least 3 years of Entity Framework or Entity Framework Core or other .NET supported ORM technologies like Dapper
- At least 3 years of Sql Server or similar relational database management systems (RDBMS)
- At least 3 years of source control e.g. Git
- At least 2 years of REST API development
- At least 3 years of developing secure .NET applications. E.g. token or claims based authorization, authentication/authorization technologies such as OAuth, Windows Auth, Basic Auth, etc.
- Basic understanding of the .NET framework. I.e. Common Language Runtime (CLR), Intermediate Language (IL), memory management (especially related to proper use of handles), etc.
- At least 2 years of the OpenAPI specification (Swagger)
- At least 2 years of .NET cloud development
- At least 2 years of integrating software monitoring and analytics/logging platforms
- Working experience of asynchronous programmaing and event-based patterns.
- Working knowledge of robust design patterns that enforce software modularity, reusability, testability, and extensibility.
- Working experience of unit tests
- Working experience of documenting and versioning software
- Working knowledge of docker containers and server platforms such as IIS
- A solid understanding of OOP principles
- Experience with react and node.js
- At least 3 years of Open API Specification and Swagger
- Experience in design, code, test, debug and document applications
- Experience in application design, latest design patterns, deployment, and troubleshooting
- Experience with one or more communications protocols
- Experience eliciting and documenting information from diverse business area stakeholders and subject matter experts
- Excellent analytical, problem-solving, and decision-making skills; verbal and written communication skills; interpersonal and negotiation skills
- Good experience with infrastructure as code specifically Terraform
- A team player with a track record for meeting deadlines
Technical Skills (30%)
- Required to translate technical systems specifications into working, tested applications.
- Technical skills and hands on experience to reflect the technologies noted in experience above (Java, Azure, etc)
- This includes:
- Developing detailed programming specifications
- writing and/or generating code
- compiling data-driven programs, maintaining, and conducting unit tests
- Resolves and troubleshoots technical problems which arise during the use and operation of softwarepackages, including technical assistance in implementation, conversion, and deployment
Communication Skills (10%)
- Strong communication skills to prepare documentation, including but not limited to: solution documentation, user manuals, reports, reviews, assessments
- Ability to present ideas and suggestions clearly and effectively and in a user-friendly manner; maintain a high level of customer service to both internal and external clients
- Ability to communicate designs and development in clear and understandable manner
Must Haves:
- At least 4 years of C#
- At least 3 years of .NET Core or .NET 5+
- At least 3 years of ASP.NET MVC
- At least 3 years of ASP.NET Web API