Senior Software Developer – Full Stack
Upstaff Senior Software Developer – Full Stack
Requirements
- Entity Framework or other Object-Relational Mapping (ORM) data access tools
- REST APIs and API-based application development
- React and Next.js
- JavaScript and TypeScript
- SQL and relational database technologies
- Node.js
- Web Content Accessibility Guidelines (WCAG) for accessible web application development
- React Hook Form
- React Query
- Zustand
- Collaborate with Business Analysts, UX/UI Designers, Product Managers, Cloud Architects, and other stakeholders to translate business requirements, user stories, UI/UX artifacts, solution architecture, security requirements, and data models into application designs and technical specifications.
- Design, develop, test, debug, and maintain full-stack web applications and cloud-native software products.
- Develop scalable Minimum Viable Products (MVPs) and enterprise cloud-native web applications while ensuring accessibility and AODA compliance.
- Design and implement overall solution architecture.
- Develop and integrate responsive front-end user interfaces with backend APIs and services.
- Design, construct, and maintain RESTful API services.
- Design and deploy relational and NoSQL database solutions.
- Ensure applications are designed and optimized for performance, scalability, reliability, and maintainability.
- Create object-oriented models and UML design artifacts using tools such as Power Designer.
- Build and enhance applications using modern Cloud-Native, PaaS, microservices, API-based, responsive web design, and serverless architecture patterns.
- Support Continuous Integration and Continuous Deployment (CI/CD) pipelines.
- Participate in Quality Assurance and Defect Management activities, including unit testing, test automation, penetration/vulnerability testing, load testing, accessibility testing, system testing, user testing, and migration testing.
- Provide critical production application support, including incident investigation, troubleshooting, root cause analysis, maintenance, and implementation of interim and long-term fixes.
- Prepare Method of Procedure (MOP) documents and implementation packages for production releases.
- Develop operational procedures and technical documentation for production support teams.
- Coordinate system development activities and provide technical consultation and guidance to team members.
- Provide post-implementation support and ongoing application maintenance.
- Provide knowledge transfer to Ministry staff throughout the engagement.
- Translate business requirements into technical designs and software implementations.
- React / Redux / Next.js
- JavaScript and TypeScript
- Node.js
- JSON
- REST APIs and Web Services
- Entity Framework and ORM technologies
- SQL and relational databases
- Azure SQL
- Azure PaaS and Cloud Services
- Java EE technologies
- Spring Framework / Spring Boot / Spring MVC
- Microservices Architecture
- Serverless Architecture
- Responsive Web Design
- Java 1.8+, JDK 11+
- JDBC, JPA
- XML, DOM, SAX, XSLT
- HTML / DHTML
- WebLogic 14+, WebSphere, JBoss, Tomcat, WildFly
- Relational, hierarchical, and NoSQL databases
- Azure SQL
- Azure Cloud Development, including PaaS and SQL services
- Responsive web application development
- Web APIs and web services design, development, and testing
- Unit testing and test automation using tools such as NUnit, XUnit, MSTest, Karma, or Jasmine
- Regression testing, both manual and automated
- Playwright or other web-based QA automation tools
- Microservices and container-based application development and deployment
- Spring Boot
- Git-based source control
- Azure DevOps (VSTS/TFS)
- CI/CD pipeline setup, management, and automation
- Working in Scrum/Agile software development environments.
- Participating as a Developer or QA/Test professional within cross-functional delivery teams.
- Collaborating with Developers, Testers, Product Management, Business Analysts, and Design teams.
- Participating in sprint planning, task planning, daily stand-ups, iteration demos, retrospectives, and review meetings.
- Providing technical input into development estimates and solution designs.
- Working in concurrent development environments using Git-based source control and feature branching strategies.
- Supporting DevOps practices and CI/CD pipelines.
- Web Content Accessibility Guidelines (WCAG)
- Accessibility for Ontarians with Disabilities Act (AODA)
- Accessible and inclusive web application development practices
- Excellent analytical, problem-solving, and decision-making abilities.
- Strong verbal and written communication skills.
- Excellent interpersonal and collaboration skills.
- Strong negotiation and stakeholder management abilities.
- Ability to work independently and collaboratively within a multidisciplinary team.
- Ability to communicate complex technical concepts to both technical and non-technical stakeholders.