Full Stack Architect
Location: Toronto, Ontario
Contract Term: 1 year. Option to extend up to 12 months. Total contract not to exceed 24 months.
Knowledge & Skills
- Candidate must be able to work with a team on constructing solutions that fully integrate and collaborate with existing IT systems to solve complex business solutions. Candidate should have a holistic view of enterprise solutions, taking into consideration operational costs, security, performance engineering, application development, and systems management.
- Candidate for this position must be capable of playing different roles within the team, from architect to high-skilled developer.
- The candidate must have a sound understanding of API, enterprise integration patterns, technology architecture and infrastructure but also very good communication skills, with the ability to adapted them to different audiences.
- Java, Angular, SpringBoot, Microservices, Azure Cloud, Docker, Kubernetes, API Implementation
- Experience using backend technologies such as Java, Spring MVC, SQL Server, MySQL, NoSql database like MongoDB or Cosmos DB on Linux operating system.
- Strong background in data structures and algorithms and computer science fundamentals.
- Ability to build the solution construct in Azure Cloud environment
- Experience and understanding of CI/CD, automated testing using open source modern frameworks like Selenium, Jenkins etc.
- Strong Web application design and development experience
- Strong Object Oriented programming experience and knowledge
- Strong understanding of networking, security and infrastructure
- Utilize client requirements for building a suitable solution to meet the business needs; prepare proposals for small to medium size projects or draft components of large proposals, demonstrating the benefit to be gained from approval and implementation of the proposed project.
- Utilizing robust and scalable solutions to support Enterprise applications
- Utilizing API’s using REST, Java, Spring Boot for application integrations.
- Analyze user needs using structured systems analysis techniques, working closely with client representatives and system specifications indicating clearly what the system is required to do; evaluate alternative system solutions available and recommend proposed approach.
- Test the system, customizing it as required to meet user requirements, including translating system design into program design specifications and developing program specifications to resolve programming problems. Define, analyze and resolve technical issues and develop program specifications.
- Prepare programs for installation and install system, including completion of related documentation; provide installation support (on-site/on-call as required). Utilize post implementation reviews and provide technical support and problem resolution as required.
- Function as a team member on multi-branch projects.
- Perform other related duties as assigned or required.