Note: Hybrid - 3 Days onsite / 2 days remote
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
Description
Responsibilities
- Required to translate technical systems specifications into working, tested applications. This includes:
- Developing detailed programming specifications.
- Writing and/or generating code.
- Compiling data-driven programs, maintaining, and conducting unit tests.
- Analyzing, designing, developing, coding, and implementing programs in one or more programming languages, for Web and Rich Internet Applications.
- Supporting applications with an understanding of system integration, test planning, scripting, and troubleshooting.
- Designing and developing REST API platform (e.g., using Apigee/APIM).
- Converting web services from SOAP to REST or vice-versa.
- Resolving and troubleshooting 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 patterns, 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.
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 software packages, 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