Jobs
>
Montréal

    Embedded Software Sr. Engineer - Montreal, Canada - Caterpillar Brazil

    Caterpillar Brazil
    Caterpillar Brazil Montreal, Canada

    2 weeks ago

    Default job background
    Description

    Description de l'emploi

    Peck Tech compagnie de Caterpillar se spécialise dans la technologie de l'information et les services de consultation pour le secteur de l'exploitation minière. Peck Tech offre à ses clients partout dans le monde une expertise incomparable dans les solutions technologiques de pointe.

    Nous sommes à la recherche d'une candidate ou d'un candidat d'exception pour pourvoir combler le poste de développeur de logiciels senior, basé au siège social de Peck Tech à Montréal.

    Vous allez travailler au sein d'une équipe concentrée sur les capteurs avancés, la vision par ordinateur et les projets d'automatisation.

    Nous offrons un environnement de travail motivant et agile qui est à la fois stimulant et enrichissant, avec des opportunités d'apprendre et d'implémenter de nouvelles technologies, de développer vos compétences et la possibilité de travailler avec des experts de l'industrie et sur les technologies de pointe.

    Sommaire de l'emploi

    Programmer des logiciels incluant la conception, l'implémentation, les tests, la documentation et le support pour une variété des plateformes numériques.

    Votre rôle

    Planifier et exécuter la mise en œuvre d'une application logicielle, y compris les estimations de temps, le codage, les tests unitaires, la documentation, le packaging et la configuration.

    Contribuer aux décisions de conception et aux discussions avec les équipes de projet.

    Prendre la responsabilité de résoudre les problèmes détectés et maintenir le logiciel sur une base continue, en fournissant un soutien à l'équipe d'assurance qualité.

    Gérer les priorités et les échéanciers des projets et des tâches à accomplir.

    Développer en fonction de la méthodologie Agile, contribuer aux sessions quotidiennes SCRUM.

    Reconnaître et adresser les occasions d'améliorer la performance des modules logiciels, des pratiques d'ingénierie, de l'outillage et d'autres procédés et livrables de systèmes de qualité.

    Collaborer avec les clients. Traduire les exigences des clients en spécifications logiciel.

    Collaborer au sein d'équipe multidisciplinaire.

    Diriger et aider nos clients commerciaux à réaliser leurs stratégies en recherchant les technologies les mieux adaptées, en proposant l'architecture des solutions et en évaluant l'effort requis.

    À mesure qu'un projet évolue, participez aux réunions concernant les besoins du client, l'architecture, la définition des tests et la stratégie d'atténuation des risques avant de commencer à coder.

    Descripteurs de compétences

    Pensée analytique : Connaissance des techniques et des outils favorisant une analyse efficace ; capacité à déterminer la cause profonde des problèmes organisationnels et à créer des solutions alternatives pour résoudre ces problèmes.

    Niveau d'expérience étendue :

    Recherche les divergences et les incohérences dans les informations disponibles ; explique les écarts.

    Organise et priorise la séquence des mesures à prendre pour remédier à la situation.

    Identifie de nombreuses causes possibles d'un problème sur la base de l'expérience antérieure et des recherches actuelles.

    Quantifie les coûts, les avantages, les risques et les chances de succès avant de recommander un plan d'action.

    Aborde un problème complexe en le décomposant en ses éléments constitutifs.

    Choisir parmi un ensemble diversifié d'outils d'analyse selon la nature de la situation.

    Prise de décision et pensée critique : Connaissance du processus de prise de décision et des outils et techniques associés ; capacité à analyser avec précision les situations et à prendre des décisions productives basées sur un jugement éclairé.

    Niveau d'expérience étendue :

    Analyse et discute des alternatives avec plusieurs parties prenantes.

    Surveille l'évolution des modèles de pensée critique et de prise de décision en vue d'une utilisation potentielle par l'organisation.

    Anticipe les questions et considérations particulières pour une prise de décision efficace en cas de crise.

    Partage ses expériences concernant le moment optimal et les circonstances pour prendre ou s'abstenir de prendre des décisions.

    Fait la différence entre le contenu et le contexte d'une décision.

    Communications efficaces : Compréhension des concepts, outils et techniques de communication efficaces ; capacité à transmettre, recevoir et interpréter avec précision des idées, des informations et des besoins grâce à l'application de comportements de communication appropriés.

    Niveau d'expérience étendue :

    Examine les écrits ou les présentations des autres et fournit des commentaires.

    Adapte les documents et les présentations pour le public visé.

    Fait preuve d'empathie et d'assurance lorsqu'il communique un besoin ou défend une position.

    Communique bien avec ses collègues, ses supérieurs et les tiers partis.

    Utilise des méthodes de persuasion appropriées lors de la sollicitation d'un accord.

    Reste concentré sur le sujet à l'étude.

    Tests de produits : Connaissance des approches, techniques et outils de test de produits ; capacité à concevoir, planifier et exécuter des stratégies et des tactiques de test pour garantir la qualité des produits à toutes les étapes de la fabrication.

    Niveau d'expérience étendue :

    Coordonne l'exécution des plans de test, y compris les ressources, la stratégie, les calendriers, les processus et les outils.

    Collabore avec l'équipe de conception pour s'assurer que les considérations relatives aux tests soient intégrées à la conception du système.

    Recommande des outils et des techniques pour automatiser, simplifier et améliorer les tests de produits.

    Compare et contraste les méthodologies et outils de différents test.

    Adapte la méthodologie et les outils de test au produit testé ; développe des scénarios et des scripts de test.

    Estime le temps, les efforts et les ressources nécessaires pour des tests approfondis.

    Diagnostic des problèmes techniques : Connaissance des approches, techniques et outils de diagnostic ; capacité à anticiper, détecter et résoudre les problèmes techniques dans un environnement de production.

    Niveau d'expérience étendue :


    • Consulte et entraîne ses collègues sur les méthodes de diagnostic de problèmes non-récurrents ou reliés à la performance.


    • Établit les meilleures pratiques pour cerner les problèmes de logiciel ou de système.


    • Mène les discussions sur les méthodes de diagnostic alternatives et leur applicabilités pour différents types de problèmes.


    • Développe des stratégies et processus pour le suivi du registre des problèmes, leur résolutions et les leçons apprises.


    • Dirige la résolution de défaillances multi-composants complexes.

    Architecture de plate-forme : Connaissance des technologies et des méthodes permettant de concevoir des produits logiciels et des feuilles de route pour exécuter des systèmes d'applications commerciales ; capacité à concevoir ces feuilles de route et à déployer des interfaces de support permettant aux utilisateurs finaux d'accéder aux systèmes associés, conformément aux normes et aux processus.

    Niveau d'expérience étendue :

    Surveille la conformité des processus et des normes d'architecture de plateforme et leur alignement avec les objectifs commerciaux.

    Guide les architectes de plate-forme moins expérimentés sur les techniques et les approches utilisées dans les processus de conception.

    Conseille les autres afin de livrer des feuilles de route d'architectures de plate-forme de haute qualité pour satisfaire pleinement les besoins des clients.

    Recommande des améliorations à l'efficacité et à l'efficience des processus standards de modélisation de plateforme.

    Enseigne aux membres de différentes équipes leurs rôles et responsabilités associés à l'allocation de ressources à diverses plates-formes.

    Résout les problèmes moyennement complexes qui surviennent dans les processus de modélisation de plateforme et de conception de feuilles de route.

    Analyse des exigences : Connaissance des outils, méthodes et techniques d'analyse des exigences ; capacité à obtenir, analyser et enregistrer les fonctionnalités commerciales requises et les exigences non fonctionnelles pour assurer le succès d'un projet de développement de système ou de logiciel.

    Niveau Intermédiaire :

    Joue un rôle actif ou de premier plan dans l'enregistrement et le stockage des documents d'exigences sous diverses formes.

    Prend en charge la réussite de toutes les activités, tâches et livrables majeurs relatifs à l'étape d'analyse des exigences.

    Prend en charge l'utilisation avancée d'outils et de services d'analyse des exigences, y compris le prototypage et les cas d'utilisation.

    Produit des modèles et de la documentation détaillés sur les exigences fonctionnelles et informationnelles.

    Utilise des outils de création de diagrammes automatisés pour assurer la traçabilité des exigences.

    Posséder 10+ années d'expérience en C ++. Maitriser la programmation orientée-objet.

    Vaste expérience avec la programmation Python.

    Vaste expérience des bases de données et du développement centré sur les données, y compris la gestion, l'intégration et la structure des données.

    Connaissance approfondie du cycle complet de développement logiciel, y compris l'architecture et la conception logicielle, l'implémentation, l'interface, les tests, le support, la documentation et la maintenance.

    Solides compétences analytiques et de résolution de problèmes.

    Capacité de travailler dans un environnement en évolution rapide avec des délais courts sans compromettre la qualité du travail.

    Capacité de travailler en équipe ou individuellement, facilité de la communication orale et écrite (anglais et français requis).

    Une expérience pratique avec la programmation de sockets et la communication IP est un atout.

    Une expérience dans l'industrie minière et une expérience dans les applications de forage et de dynamitage sont un atout.

    La connaissance des technologies Caterpillar MineStar est un atout.

    Maîtriser Visual Studio est un atout.

    Expérience avec le développement GNU / Linux est un atout.

    Expérience avec l'IA, l'apprentissage automatique, les algorithmes est un atout.

    Expérience avec contrôle de révision (GIT, SVN) est un atout.

    Exigences Diplôme

    Baccalauréat en informatique ou génie logiciel.

    Information additionnelle

    Basé au siège social de Peck Tech à Montréal.

    Relocalisation au Canada n'est pas disponible.

    Le rôle requiert de 33% à 50% de déplacements au Canada ou à l'international.

    Le parrainage n'est pas disponible.

    Anglais et français requis.

    Career Area:

    Engineering

    Job Description:

    Your Work Shapes the World at Caterpillar Inc.

    When you join Caterpillar, you're joining a global team who cares not just about the work we do – but also about each other. We are the makers, problem solvers, and future world builders who are creating stronger, more sustainable communities. We don't just talk about progress and innovation here – we make it happen, with our customers, where we work and live. Together, we are building a better world, so we can all enjoy living in it.

    Why you want the job:

    Peck Tech, a Caterpillar Company, specializes in mining information technology and consulting services, providing unparalleled expertise in advanced technology solutions for customers worldwide. We are looking for an exceptional candidate to fill a position as a Senior Software Developer based at Peck Tech's headquarters in Montreal.

    You will work with a team focused on advanced sensors, computer vision, and automation projects. We offer an engaging and agile working environment that is both challenging and rewarding, with opportunities to learn and implement new technologies, grow your skills and the possibility to work with industry experts and on state-of-the-art technologies.

    Job Summary:

    Designs, develops, implements, and tests new Software products, tools, or technologies across various digital platforms.

    Responsibilities:

    • Contribute to defining the architecture and design of the software applications, including stand-alone and embedded software.
    • Plan and execute the implementation of a software application, including time estimates, coding, unit testing, documentation, packaging, and setup.
    • Take ownership of resolving any detected issues and maintaining the software on a continuous basis, providing support to the QA team and for field escalated issues.
    • Work with minimal supervision and a high degree of autonomy and collaboration. Prioritize competing projects and tasks.
    • Develop following Agile methodology and collaborate within multidisciplinary teams. Report progress status and issues and provide or verify work estimates.
    • Recognize the opportunities to improve the performance of software modules, engineering practices, tooling, and other quality system processes and deliverables. Implement support policies, guidelines, standards, and best practices.
    • Collaborate with customers. Translate user requirements into software requirements.
    • Lead and assist our business customers in realizing their strategies by investigating the best suitable technologies, proposing the solutions architecture, and evaluating the required effort.
    • As a project evolves, participate in meetings regarding the client's needs, architecture, test definition, and risk mitigation strategy before you start coding.
    • Travel and field work up to 50% of the time.

    Skill Descriptors:

    Analytical Thinking: Knowledge of techniques and tools that promote effective analysis; ability to determine the root cause of organizational problems and create alternative solutions that resolve these problems.

    Level Extensive Experience:

    • Seeks discrepancies and inconsistencies in available information; explains variances.
    • Organizes and prioritizes the sequence of steps to be taken to remedy the situation.
    • Identifies many possible causes for a problem based on prior experience and current research.
    • Quantifies the costs, benefits, risks and chances for success before recommending a course of action.
    • Approaches a complex problem by breaking it down into its component parts.
    • Chooses among a diverse set of analytical tools according to the nature of the situation.

    Decision Making and Critical Thinking: Knowledge of the decision-making process and associated tools and techniques; ability to accurately analyze situations and reach productive decisions based on informed judgment.

    Level Extensive Experience:

    • Analyzes and discusses alternatives with multiple stakeholders.
    • Monitors developments in critical-thinking and decision-making models for potential use by organization.
    • Anticipates special issues and considerations for effective decision-making during a crisis.
    • Shares experiences regarding optimal timing and circumstances for refraining from or making decisions.
    • Differentiates between content and context of a decision.

    Effective Communications: Understanding of effective communication concepts, tools and techniques; ability to effectively transmit, receive, and accurately interpret ideas, information, and needs through the application of appropriate communication behaviors.

    Level Extensive Experience:

    • Reviews others' writing or presentations and provides feedback.
    • Adapts documents and presentations for the intended audience.
    • Demonstrates both empathy and assertiveness when communicating a need or defending a position.
    • Communicates well downward, upward, and outward.
    • Employs appropriate methods of persuasion when soliciting agreement.
    • Maintains focus on the topic at hand.

    Product Testing: Knowledge of product testing approaches, techniques and tools; ability to design, plan and execute testing strategies and tactics to ensure product quality at all stages of manufacturing.

    Level Extensive Experience:

    • Coordinates execution of test plans, including resources, strategy, schedules, processes and tools.
    • Collaborates with the design team to ensure testing considerations are incorporated into system design.
    • Recommends tools and techniques for automating, simplifying and enhancing product testing.
    • Compares and contrasts alternative testing methodologies and tools.
    • Matches testing methodology and tools to the product being tested; develops test scenarios and scripts.
    • Estimates time, effort and resources required for thorough testing.

    Troubleshooting Technical Problems: Knowledge of troubleshooting approaches, tools and techniques; ability to anticipate, detect and resolve technical problems in a manufacturing environment.

    Level Extensive Experience:

    • Consults and coaches others on how to troubleshoot non-recurring and performance-related problems.
    • Establishes best practices for distinguishing software or systems problems.
    • Leads in discussing alternative troubleshooting approaches and their applicability to types of problems.
    • Develops policies and procedures to monitor problem logs, resolutions and lessons learned.
    • Directs the resolution of complex, multi-component failures.

    Platform Architecture: Knowledge of technologies and methods to design software products and roadmaps to execute business application systems; ability to design these roadmaps and deploy supportive interfaces for end-users to access related systems, in accordance with standards and processes.

    Level Extensive Experience:

    • Monitors the compliance of platform architecture processes and standards and alignment with business objectives.
    • Guides less experienced platform architects on the techniques and approaches used in design processes.
    • Advises others on providing high-quality deliverables of platform architectural roadmaps to fully satisfy client needs.
    • Recommends improvements to the effectiveness and efficiency of platform modelling standard processes.
    • Teaches cross-team technology members about their roles and responsibilities associated with allocating resources to various platforms.
    • Resolves moderately complex issues that occur in platform modelling and roadmaps design processes.

    Requirements Analysis: Knowledge of tools, methods, and techniques of requirement analysis; ability to elicit, analyze and record required business functionality and non-functionality requirements to ensure the success of a system or software development project.

    Level Intermediate:

    • Plays an active or leading role in recording and storing requirement documents in various forms.
    • Supports successful completion of all major activities, tasks and deliverables pertaining to the requirement analysis stage.
    • Supports the advanced use of requirements analysis tools and services, including prototyping and use cases.
    • Produces detailed functional and information requirements models and documentation.
    • Utilizes automated diagramming tools to ensure traceability of requirements.

    Top Candidates will also have:

    • 10+ years' experience in C++. Strong object-oriented programming skills
    • Extensive experience with Python programming
    • Extensive experience with databases and data-centric development, including data management, integration and structure
    • Expert knowledge of the full cycle software development, including software architecture and design, implementation, interface, testing, troubleshooting and maintenance
    • An in-depth knowledge of Windows and GNU/Linux development, including desktop applications and embedded applications
    • Strong analytical and problem-solving skills
    • Comfortable working in a fast-paced environment with short deadlines without compromising quality of work
    • Ability to work in teams or individually, superior communication skills, both spoken and written (English and French required)
    • Experience with multi-tier architectures is an asset.
    • Knowledge of Caterpillar MineStar Technologies is an asset.
    • Experience with the Mining industry and experience with drilling and blasting applications is an asset.
    • Hands-on experience with Socket Programming & IP Communication is an asset
    • Proficiency with Visual Studio and revision control (GIT, SVN) is an asset
    • Experience with Computer Vision, AI, Machine learning, Algorithms and Analytics is an asset
    • Experience with Cloud platform development is an asset

    Degree Requirement:

    • Bachelor of Science in Computer Science or Software Engineering.

    Additional information:

    • The preferred location for this position is in Montreal.
    • Domestic relocation assistance is not available.
    • This position may require 33% to 50% travel domestically and/or internationally .
    • Sponsorship is not available.
    • English and French required

    Description de l'emploi

    Peck Tech compagnie de Caterpillar se spécialise dans la technologie de l'information et les services de consultation pour le secteur de l'exploitation minière. Peck Tech offre à ses clients partout dans le monde une expertise incomparable dans les solutions technologiques de pointe.

    Nous sommes à la recherche d'une candidate ou d'un candidat d'exception pour pourvoir combler le poste de développeur de logiciels senior, basé au siège social de Peck Tech à Montréal.

    Vous allez travailler au sein d'une équipe concentrée sur les capteurs avancés, la vision par ordinateur et les projets d'automatisation.

    Nous offrons un environnement de travail motivant et agile qui est à la fois stimulant et enrichissant, avec des opportunités d'apprendre et d'implémenter de nouvelles technologies, de développer vos compétences et la possibilité de travailler avec des experts de l'industrie et sur les technologies de pointe.

    Sommaire de l'emploi

    Programmer des logiciels incluant la conception, l'implémentation, les tests, la documentation et le support pour une variété des plateformes numériques.

    Votre rôle

    • Planifier et exécuter la mise en œuvre d'une application logicielle, y compris les estimations de temps, le codage, les tests unitaires, la documentation, le packaging et la configuration.
    • Contribuer aux décisions de conception et aux discussions avec les équipes de projet.
    • Prendre la responsabilité de résoudre les problèmes détectés et maintenir le logiciel sur une base continue, en fournissant un soutien à l'équipe d'assurance qualité.
    • Gérer les priorités et les échéanciers des projets et des tâches à accomplir.
    • Développer en fonction de la méthodologie Agile, contribuer aux sessions quotidiennes SCRUM.
    • Reconnaître et adresser les occasions d'améliorer la performance des modules logiciels, des pratiques d'ingénierie, de l'outillage et d'autres procédés et livrables de systèmes de qualité.
    • Collaborer avec les clients. Traduire les exigences des clients en spécifications logiciel.
    • Collaborer au sein d'équipe multidisciplinaire.
    • Diriger et aider nos clients commerciaux à réaliser leurs stratégies en recherchant les technologies les mieux adaptées, en proposant l'architecture des solutions et en évaluant l'effort requis.
    • À mesure qu'un projet évolue, participez aux réunions concernant les besoins du client, l'architecture, la définition des tests et la stratégie d'atténuation des risques avant de commencer à coder.

    Descripteurs de compétences

    Pensée analytique : Connaissance des techniques et des outils favorisant une analyse efficace ; capacité à déterminer la cause profonde des problèmes organisationnels et à créer des solutions alternatives pour résoudre ces problèmes.

    Niveau d'expérience étendue :

    • Recherche les divergences et les incohérences dans les informations disponibles ; explique les écarts.
    • Organise et priorise la séquence des mesures à prendre pour remédier à la situation.
    • Identifie de nombreuses causes possibles d'un problème sur la base de l'expérience antérieure et des recherches actuelles.
    • Quantifie les coûts, les avantages, les risques et les chances de succès avant de recommander un plan d'action.
    • Aborde un problème complexe en le décomposant en ses éléments constitutifs.
    • Choisir parmi un ensemble diversifié d'outils d'analyse selon la nature de la situation.

    Prise de décision et pensée critique : Connaissance du processus de prise de décision et des outils et techniques associés ; capacité à analyser avec précision les situations et à prendre des décisions productives basées sur un jugement éclairé.

    Niveau d'expérience étendue :

    • Analyse et discute des alternatives avec plusieurs parties prenantes.
    • Surveille l'évolution des modèles de pensée critique et de prise de décision en vue d'une utilisation potentielle par l'organisation.
    • Anticipe les questions et considérations particulières pour une prise de décision efficace en cas de crise.
    • Partage ses expériences concernant le moment optimal et les circonstances pour prendre ou s'abstenir de prendre des décisions.
    • Fait la différence entre le contenu et le contexte d'une décision.

    Communications efficaces : Compréhension des concepts, outils et techniques de communication efficaces ; capacité à transmettre, recevoir et interpréter avec précision des idées, des informations et des besoins grâce à l'application de comportements de communication appropriés.

    Niveau d'expérience étendue :

    • Examine les écrits ou les présentations des autres et fournit des commentaires.
    • Adapte les documents et les présentations pour le public visé.
    • Fait preuve d'empathie et d'assurance lorsqu'il communique un besoin ou défend une position.
    • Communique bien avec ses collègues, ses supérieurs et les tiers partis.
    • Utilise des méthodes de persuasion appropriées lors de la sollicitation d'un accord.
    • Reste concentré sur le sujet à l'étude.

    Tests de produits : Connaissance des approches, techniques et outils de test de produits ; capacité à concevoir, planifier et exécuter des stratégies et des tactiques de test pour garantir la qualité des produits à toutes les étapes de la fabrication.

    Niveau d'expérience étendue :

    • Coordonne l'exécution des plans de test, y compris les ressources, la stratégie, les calendriers, les processus et les outils.
    • Collabore avec l'équipe de conception pour s'assurer que les considérations relatives aux tests soient intégrées à la conception du système.
    • Recommande des outils et des techniques pour automatiser, simplifier et améliorer les tests de produits.
    • Compare et contraste les méthodologies et outils de différents test.
    • Adapte la méthodologie et les outils de test au produit testé ; développe des scénarios et des scripts de test.
    • Estime le temps, les efforts et les ressources nécessaires pour des tests approfondis.

    Diagnostic des problèmes techniques : Connaissance des approches, techniques et outils de diagnostic ; capacité à anticiper, détecter et résoudre les problèmes techniques dans un environnement de production.

    Niveau d'expérience étendue :


    • Consulte et entraîne ses collègues sur les méthodes de diagnostic de problèmes non-récurrents ou reliés à la performance.


    • Établit les meilleures pratiques pour cerner les problèmes de logiciel ou de système.


    • Mène les discussions sur les méthodes de diagnostic alternatives et leur applicabilités pour différents types de problèmes.


    • Développe des stratégies et processus pour le suivi du registre des problèmes, leur résolutions et les leçons apprises.


    • Dirige la résolution de défaillances multi-composants complexes.

    Architecture de plate-forme : Connaissance des technologies et des méthodes permettant de concevoir des produits logiciels et des feuilles de route pour exécuter des systèmes d'applications commerciales ; capacité à concevoir ces feuilles de route et à déployer des interfaces de support permettant aux utilisateurs finaux d'accéder aux systèmes associés, conformément aux normes et aux processus.

    Niveau d'expérience étendue :

    • Surveille la conformité des processus et des normes d'architecture de plateforme et leur alignement avec les objectifs commerciaux.
    • Guide les architectes de plate-forme moins expérimentés sur les techniques et les approches utilisées dans les processus de conception.
    • Conseille les autres afin de livrer des feuilles de route d'architectures de plate-forme de haute qualité pour satisfaire pleinement les besoins des clients.
    • Recommande des améliorations à l'efficacité et à l'efficience des processus standards de modélisation de plateforme.
    • Enseigne aux membres de différentes équipes leurs rôles et responsabilités associés à l'allocation de ressources à diverses plates-formes.
    • Résout les problèmes moyennement complexes qui surviennent dans les processus de modélisation de plateforme et de conception de feuilles de route.

    Analyse des exigences : Connaissance des outils, méthodes et techniques d'analyse des exigences ; capacité à obtenir, analyser et enregistrer les fonctionnalités commerciales requises et les exigences non fonctionnelles pour assurer le succès d'un projet de développement de système ou de logiciel.

    Niveau Intermédiaire :

    • Joue un rôle actif ou de premier plan dans l'enregistrement et le stockage des documents d'exigences sous diverses formes.
    • Prend en charge la réussite de toutes les activités, tâches et livrables majeurs relatifs à l'étape d'analyse des exigences.
    • Prend en charge l'utilisation avancée d'outils et de services d'analyse des exigences, y compris le prototypage et les cas d'utilisation.
    • Produit des modèles et de la documentation détaillés sur les exigences fonctionnelles et informationnelles.
    • Utilise des outils de création de diagrammes automatisés pour assurer la traçabilité des exigences.

    Exigences

    • Posséder 10+ années d'expérience en C ++. Maitriser la programmation orientée-objet.
    • Vaste expérience avec la programmation Python.
    • Vaste expérience des bases de données et du développement centré sur les données, y compris la gestion, l'intégration et la structure des données.
    • Connaissance approfondie du cycle complet de développement logiciel, y compris l'architecture et la conception logicielle, l'implémentation, l'interface, les tests, le support, la documentation et la maintenance.
    • Solides compétences analytiques et de résolution de problèmes.
    • Capacité de travailler dans un environnement en évolution rapide avec des délais courts sans compromettre la qualité du travail.
    • Capacité de travailler en équipe ou individuellement, facilité de la communication orale et écrite (anglais et français requis).
    • Une expérience pratique avec la programmation de sockets et la communication IP est un atout.
    • Une expérience dans l'industrie minière et une expérience dans les applications de forage et de dynamitage sont un atout.
    • La connaissance des technologies Caterpillar MineStar est un atout.
    • Maîtriser Visual Studio est un atout.
    • Expérience avec le développement GNU / Linux est un atout.
    • Expérience avec l'IA, l'apprentissage automatique, les algorithmes est un atout.
    • Expérience avec contrôle de révision (GIT, SVN) est un atout.

    Exigences Diplôme

    • Baccalauréat en informatique ou génie logiciel.

    Information additionnelle

    • Basé au siège social de Peck Tech à Montréal.
    • Relocalisation au Canada n'est pas disponible.
    • Le rôle requiert de 33% à 50% de déplacements au Canada ou à l'international.
    • Le parrainage n'est pas disponible.
    • Anglais et français requis.

    Posting Dates:

    June 5, June 16, 2024

    Caterpillar is an Equal Opportunity Employer (EEO).

    Not ready to apply? Join our Talent Community .

    #J-18808-Ljbffr

  • Institut Straumann AG

    Software Engineer

    3 weeks ago


    Institut Straumann AG Montréal, QC, Canada

    Chez Dental Wings, nous#repoussonsleslimitesde ladentisterienumériquedepuis2007. Participer à la planification et à l'analyse des nouvelles fonctionnalités à développer de façon agile au sein d'une équipe. · Concevoir et implémenter l'interface usager Java; · Concevoir et effec ...


  • Trader Corporation Montreal, Canada

    La Société Trader est un leader canadien de confiance dans le domaine des médias en ligne et des services aux concessionnaires et aux prêteurs. L'entreprise comprend , AutoSync et Dealertrack Canada. au Québec) offre le plus grand inventaire de voitures neuves et d'occasion au ...


  • Unity Montréal, QC, Canada

    Rejoignez Unity Technologies, acteur majeur dans l'industrie du jeu vidéo, en tant que développeur(se) de Logiciels Sénior au sein de notre équipe Multiplayer Services. En tant que leader technique, vous piloterez l'architecture et le développement de nos services de jeu, en vous ...


  • Nuvei Corp Montréal, QC, Canada Full time

    NVEI) (TSX : NVEI), la société fintech canadienne qui accélère les activités de ses clients dans le monde entier. La technologie modulaire, flexible et évolutive de Nuvei permet aux entreprises de premier plan d'accepter les paiements de nouvelle génération, d'offrir toutes les o ...


  • Computershare Montreal, Canada

    Job Description*Please find the English version below.Lieu : Montréal, QCIl s'agit d'un poste hybride principalement basé à notre bureau de Montréal. Nous nous engageons à assurer votre flexibilité et votre bien-être et notre stratégie hybride nécessite actuellement trois jours p ...


  • Swiftrecruit Montréal, QC, Canada

    Location: Sainte-Anne-de-Bellevue, QC · Hybrid: Onsite - Mon, Tues, Thurs · Employment Type: Permanent · (There may be option for 1 year Term employment with possible extensions) · Education/Experience: Bachelor's degree in computer engineering or other relevant field required ...


  • TTC Montreal, Canada

    Consultant Assurance Qualité Senior · Montréal Québec, Canada · Qui sommes-nous? · TTC est un acteur majeur de l'assurance qualité logicielle au niveau mondial. Nous aidons les entreprises à transformer la façon dont elles livrent les applications digitales. Notre palette d'e ...


  • Sword Group Montréal, QC, Canada

    English will follow *** · Nous sommes actuellement à la recherche d'un développeur logiciel Fullstack afin de soutenir un de nos clients. · Le candidat doit parler et écrire l'anglais à un niveau avancé, afin de communiquer clairement et efficacement au sein d'une équipe interna ...


  • SwiftConnect Montréal, QC, Canada Full time

    By ensuring your digital pass is on a phone, watch or anywhere it needs to be, we enable swift access to every place, everywhere. We integrate with existing mobile and credential platforms as well as access control and enterprise systems to centralize access management. SwiftConn ...


  • Caterpillar Brazil Montreal, Canada

    de l'emploi Peck Tech compagnie de Caterpillar se spécialise dans la technologie de l'information et les services de consultation pour le secteur de l'exploitation minière. Peck Tech offre à ses clients partout dans le monde une expertise incomparable dans les solutions technolog ...


  • The Testing Consultancy Limited Montréal, QC, Canada

    Consultant Assurance Qualité Senior · TTC est un acteur majeur de l'assurance qualité logicielle au niveau mondial. Nous aidons les entreprises à transformer la façon dont elles livrent les applications digitales. Notre palette d'expertise permet à nos clients d'accélérer leur d ...


  • Circle Medical Technologies, Inc. Montréal, QC, Canada $161,000 - $197,000

    ABOUT US · Circle Medical is the fastest-growing telemedicine provider in the US and has seen incredible growth of over 200% per year in each of the previous two years. · Circle Medical is a venture-backed Y-Combinator healthcare startup on a mission to bring quality, delightfu ...


  • Trader Corporation Montréal, QC, Canada

    La Société Trader est un leader canadien de confiance dans le domaine des médias en ligne et des services aux concessionnaires et aux prêteurs. net au Québec) offre le plus grand inventaire de voitures neuves et d'occasion au Canada, recevant plus de 25 millions de visites mensue ...


  • Circle Medical Technologies, Inc. Montreal, Canada

    ABOUT US · Circle Medical is the fastest-growing telemedicine provider in the US and has seen incredible growth of over 200% per year in each of the previous two years. · Circle Medical is a venture-backed Y-Combinator healthcare startup on a mission to bring quality, delightful ...


  • Trader Corporation Montreal, Canada

    La Société Trader est un leader canadien de confiance dans le domaine des médias en ligne et des services aux concessionnaires et aux prêteurs. L'entreprise comprend , AutoSync et Dealertrack Canada. au Québec) offre le plus grand inventaire de voitures neuv ...


  • Microsoft Montreal, Canada Full time

    Overview · À l'intérieur de l'équipe des expériences Web de Microsoft Venez construire le noyau des copilotes de Microsoft avec l'équipe de Turing Microsoft, en rejoignant un groupe diversifié d'ingénieurs et de scientifiques appliqués pour améliorer, maintenir et étendue la pla ...


  • Vaco Montréal, QC, Canada

    Job Title: Senior Director of Software Engineering · Industry: Financial Services · Our client is a leading financial services company dedicated to providing innovative solutions to our clients. · We are seeking a highly skilled and experienced Senior Director of Software Engi ...

  • Hunter Bond

    Software Engineer

    4 days ago


    Hunter Bond Montreal, Canada

    Job Title: Software Engineer (Data/Airflow) · Client: Elite FinTech Firm · Salary: Up to $180k CAD + Bonus · Location: Montreal (Hybrid) · Sells: Cutting-edge tech, ownership of multiple greenfield projects, no red tape, a friendly/collaborative environment, beautiful offices, pe ...

  • NetApp

    Software Engineer

    4 weeks ago


    NetApp Montreal, Canada

    Title: Software Engineer · Location: Cork, Munster, IE, T23 PPT8 · Requisition ID: About NetApp · We're forward-thinking technology people with heart. We make our own rules, drive our own opportunities, and try to approach every challenge with fresh eyes. Of course, we can't d ...

  • Hunter Bond

    Software Engineer

    4 days ago


    Hunter Bond Montreal, Canada

    Job Title: Software Engineer · Client: Elite Scaling FinTech Firm · Salary: Up to $140k CAD + Bonus · Location: Montreal (Hybrid Working) · Sells: Cutting-edge tech, ownership of multiple greenfield projects, no red tape, a friendly/collaborative environment, beautiful offices, p ...