Job Description
Responsibilities:
- Design, implement, and continuously expand data pipelines by performing extraction, transformation, and loading activities.
- Translate technical system specifications into working, tested applications.
- Develop detailed programming specifications, write and generate code, compile data-driven programs, maintain, and conduct unit tests.
- Resolve and troubleshoot technical problems during the use and operation of software packages, including providing technical assistance in implementation, conversion, and migrations.
General Skills:
- Experience in programming and analysis; support of specialized software packages at the specified experience level.
- Ability to collaborate with IT professionals throughout the Software Development Life Cycle.
- Experience with structured methodologies for application development, design, implementation, and maintenance.
- Proficiency in designing, coding, testing, debugging, and documenting applications.
- Experience with object-oriented and/or third-generation programming languages and communication protocols.
- Knowledge of application design, deployment, troubleshooting, and latest design patterns.
- Experience with relational and hierarchical database technologies.
- Experience in information retrieval using query languages.
- Ability to elicit and document information from business stakeholders and subject matter experts.
- Strong team player with excellent analytical, problem-solving, decision-making, communication, interpersonal, and negotiation skills.
Full Stack Skills:
- Proficiency in both front-end and back-end development, including database management and DevOps.
- Experience with designing and implementing web architecture.
- Experience with user interface implementation and database deployment.
- Knowledge of designing for speed and scalability.
- Experience with REST API design, implementation, and integration with front-end UI.
- Knowledge of continuous integration and deployment processes.
Desirable Skills:
- Experience with internet-ready application programming and rapid application development methodologies.
- Understanding of information management principles, policies, and practices.
- Experience with middleware, gateways, and product installation scripting.
- Ability to provide post-implementation support and resolve technical issues.
- Experience conducting design walkthroughs and providing documentation.
Experience and Skill Set Requirements:
Core Skills and Experience - 40%:
- 10+ years as a designer and developer in large-scale multi-client web applications.
- 10+ years of Java development experience with Oracle or SQL databases.
- 5+ years of experience with RestAPI, React, Typescript, HTML5, CSS3, NodeJS.
- Knowledge of microservice architecture and application of core architecture principles.
- Experience with RXJS, NextJS, VueJS.
- Proven experience with WCAG and AODA standards.
- Experience developing responsive web applications.
- Experience with Azure DevOps.
Technical Skills and Experience - 35%:
- Knowledge of security protocols (JWT, OAuth2.0, SSL Certificates).
- Understanding of Agile methodologies.
- Object-oriented coding practices, including design patterns, refactoring, and clean code.
- Knowledge of major architectural styles (message-oriented, reactive, event-based).
- Experience with blockchain, smart contract development (Solidity), and cryptography principles.
Soft Skills - 20%:
- Strong communication skills, ability to work under pressure and adapt to change.
- Ability to develop and present ideas and solutions.
- Excellent interpersonal skills and team collaboration.
- Analytical and problem-solving skills.
Public Sector Experience - 5%:
- Experience with government development standards and processes.