about 23 hours ago

Logo of Fujitsu

Software Developer

Fujitsu

Montreal, CanadaCanadaRemote

------------------- FRANÇAIS ------------------- Résumé des FONCTIONS

Le rôle de développement logiciel consiste à assurer un développement rapide et de haute qualité de systèmes logiciels full-stack, intégrant des capacités géospatiales innovantes et des données en temps réel dans des applications mobiles et web intuitives. Le spécialiste joue un rôle clé au sein de léquipe, veillant à ce que la technologie développée et livrée soit facile à maintenir, sécurisée, fiable, disponible, résiliente, performante et conforme aux normes de sécurité en fonction des exigences métiers.

Principales responsabilités 
  • Développer et maintenir le frontend et le backend des applications.
  • Créer des interfaces utilisateur réactives et des expériences optimisées pour différents formats.
  • Mettre en œuvre des fonctionnalités de cartographie/localisation et intégrer des services de données géospatiales.
  • Utiliser le développement piloté par les tests (TDD) et des processus DevOps comme CI/CD et l’automatisation.
  • Concevoir et mettre en œuvre des API REST et des intégrations avec des systèmes internes et externes.
  • Développer des capacités hors ligne et assurer la synchronisation avec des bases de données backend.
  • Collaborer avec les parties prenantes et les analystes métiers pour recueillir les exigences et concevoir des solutions.
  • Modéliser des réseaux complexes et des actifs en utilisant des concepts de graphes et des algorithmes.
  • Évaluer et proposer des solutions adaptées aux exigences métiers en tant que membre de léquipe.
  • Estimer les efforts nécessaires pour l’implémentation (conception, développement, documentation, tests) des exigences.
  • Documenter les systèmes logiciels développés et leurs fonctionnalités.
  • Effectuer des tests, offrir un support et corriger les bogues.
  • Garantir que les solutions conçues répondent à toutes les exigences métiers.
  • Respecter les standards et les meilleures pratiques pour garantir que les systèmes développés soient maintenables, durables et correctement documentés.
  • Intégrer et respecter les normes de fiabilité, de sécurité et de cybersécurité dans le développement des sous-systèmes.
  • Collaborer avec le concepteur du système pour adopter et appliquer les meilleures pratiques.
  • Travailler avec léquipe pour sassurer que le développement du système est entièrement compris et réalisé avec un haut niveau de qualité.
  • Établir des plans de test et documenter les résultats pour les nouvelles solutions définies.
  • Définir et maintenir les standards d’ingénierie et de configuration.
  • Aider à résoudre les problèmes de support lors des migrations ou des déploiements de projets en déterminant la résolution/la solution appropriée grâce à des analyses des causes profondes et des impacts.
  • Effectuer des revues de code et sassurer du respect des normes de codage de haute qualité.
Expérience
  • Minimum de 7 ans dexpérience en développement dapplications web.
  • Plus de 5 ans dexpertise technique pertinente incluant la conception détaillée complexe et lintégration de solutions.
Formation
  • Licence en informatique, en ingénierie informatique, en génie logiciel ou dans un domaine connexe, ou expérience professionnelle équivalente.
  • Une certification DevOps est un atout. 
COMPÉTENCES/CONNAISSANCES
  • Capacité à estimer les efforts et coûts nécessaires à la livraison.
  • Aptitude à travailler sur plusieurs projets en parallèle et respecter les échéances.
  • Compétences en documentation technique.
  • Excellentes aptitudes en communication orale et écrite : capacité à communiquer efficacement avec des équipes techniques et non techniques.
  • Participer à des équipes utilisant un processus Agile/Scrum ou Waterfall et garantir que les récits/tâches soient bien définis avec toutes les informations et outils nécessaires.
  • Compétences en leadership et capacité à influencer et guider sur des questions techniques et d’intégration.
  • Expérience avérée dans la livraison de projets technologiques impliquant plusieurs parties prenantes.
  • Collaborer avec le chef de projet et les parties prenantes pour garantir le respect des engagements du projet.
  • Capacité à travailler en équipe et de manière autonome avec un haut niveau de qualité.
  • Apprentissage rapide et capacité à s’adapter à un environnement dynamique.
  • Esprit vif et axé sur lamélioration continue de la livraison.
  • Connaissance des principes de sécurité informatique.
  • Connaissance des réseaux et capacité à résoudre les problèmes liés aux réseaux.
  • Maîtrise dAngular, JavaScript/TypeScript, HTML, CSS, C#, SQL et des API REST.
  • Solide compréhension des méthodologies CI/CD et des outils (Azure DevOps, Jenkins, GitLab CI, GitHub Actions, etc.).
  • Familiarité avec des modèles de conception tels que MVC, MVP, MVVM, ainsi que les meilleures pratiques architecturales.
------------------- ENGLISH ------------------- Summary of Responsibilities

The role of Software Development is responsible for fast and high-quality development of full-stack software systems, in the context of integrating innovative geospatial capabilities and real-time data into intuitive mobile and web applications. The Specialist is a key player in the team, ensuring the technology developed and delivered is easy to maintain, secure, reliable, available, resilient, performant, and aligned with safety standards per business requirements. 

KEY Responsibilities 
  • Developing and maintaining the frontend and backend of applications.
  • Building responsive user interfaces and experiences optimized for different form-factors.
  • Implementing mapping/location capabilities and integrating geospatial data services.
  • Employing test-driven development and DevOps processes like CI/CD and automation.  
  • Designing and implementing REST APIs and integrations with internal and external systems.  
  • Developing offline capabilities and synchronization with backend databases.  
  • Collaborating with stakeholders and Business Analyst to gather requirements and design solutions.
  • Modeling complex networks and assets using graph concepts and algorithms.
  • Evaluating and solutioning of business requirements as part of the team.
  • Estimating implementation (design, development, documentation, testing) efforts related to the requirements.
  • Documentation of the developed software systems and functionalities.
  • Testing, support, and bug fixes.
  • Ensure that the solution designed meets all business requirements.
  • Follow standards and best practices to ensure the systems developed is maintainable, sustainable, and properly documented.
  • Follow standards and best practices to ensure reliability, safety and cybersecurity standards are imbedded in the development of the sub systems.
  • Work with the system designer to adopt and enforce best practices.
  • Work with the team to ensure the system development is fully understood and developed with high quality.
  • Establish test plans and tests results for newly defined solution. 
  • Define and maintain engineering and configuration standards.
  • Help with support issues during project migration or deployment, determine appropriate resolution/solution through root cause analysis and impact analysis.
  • Conduct code reviews and ensure high quality coding standards.
Experience 
  • Minimum 7 years’ experience in web application development.
  • 5+ years of relevant technical expertise including complex detailed design and solution integration. 
Education
  • Bachelor’s degree in computer science, Computer Engineering, Software Engineering, or a related field of study, or equivalent work experience.
  • DevOps Certification an asset.
Skills/Knowledge
  • Ability to estimate efforts and costs required for delivery.
  • Ability to work on multiple projects in parallel and meet deliverable dates.
  • Good technical documentation skills.
  • Excellent verbal and written communication abilities: must effectively communicate with technical and non-technical teams.
  • Participate in teams working in an Agile/Scrum or Waterfall process and ensure the stories/tasks are well defined and have all the information and tools to be successful.
  • Leadership skills and ability to influence and guide others on integration and technical matters.
  • Proven experience delivering technology projects involving multiple parties.
  • Work with the Project Manager and project stakeholders to ensure we meet project commitments.
  • Ability to work in teams and independently on tasks and deliver with a high-level of quality.
  • Ability to learn quickly and to adapt to a fast-paced environment.
  • Fast thinker and always seeking continuous improvement in the delivery.
  • Knowledge of IT security principles.
  • Knowledge of networking and troubleshooting networking issues.
  • Proficient with Angular, JavaScript/TypeScript, HTML, CSS, C#, SQL, REST APIs.
  • Strong knowledge of CI/CD methodologies and tools (Azure DevOps, Jenkins, Gitlab CI, GitHub Actions, etc.).
  • Familiarity with design patterns like MVC, MVP, MVVM and architecture best practices.