Principal API SW Engineer (Remote)
EATONMontrealUpdate time: March 8,2022
Job Description
Eaton’s Electrical Sector Distributed Energy Resource Management Systems (DERMS) Center of Excellence is seeking a Principal API Software Engineer based in our Montreal, Québec, Canada location or remotely within the Québec province. Primary Function: There is no better time to join Eaton than in this exciting era of power management. We’re reimagining innovation by adapting digital technologies — connected devices, data models and insights — to transform power management for safer and more sustainable and efficient power use. Our teams are collaborating to build the best digital solutions for our customers. We are looking for digital talent who want to help set the direction for this digital transformation and create new ways of working and thinking, for ourselves and our customers. Eaton’s Distributed Energy Resource Management Solutions Center of Excellence (DERMS CoE) is looking for a Principal Application Programming Interface (API) software engineer to join our multidisciplinary and global team responsible for developing C++ code and integrator-specific solutions for Eaton’s Linux-based, Ethernet-enabled, multi-protocol communications toolkits and associated products. You will be a part of our newly formed DERMS CoE working within our Electrical Sector Businesses, Eaton Research Labs, and Digital Offices. The DERMS CoE will help to accelerate the company’s capabilities through the development of secure, reliable, integrated, and reusable connectivity and IoT platforms, providing a foundation for our businesses to more rapidly development innovative products and services. Essential Functions: Lead process improvement activities Implement software and firmware toolkit architecture, design and deployment focusing on reusability, scalability, maintainability, and security. Participate in the evaluation and selection of 3rd party Hardware, Software and Services providers. Lead the development of a unified data model, protocol adapters, and application programming interface (API) for DERMS library Lead the implementation of an infrastructure as code embedded architecture that are employs configuration files to update logic settings, application policies, or protocol mappings. Position Criteria: Fluency in C++ and Rust Full understanding of key computer science concepts (Data Structures, Algorithms, etc.) Comprehensive knowledge of IP networking protocols (TCP/UDP/IP) Experience using object-oriented design patterns Experience with state machine design Experience developing embedded Linux firmware Full understanding of Linux Kernel and toolchains Has built and/or configured 3rd party Linux packages Experience developing unit tests Experience with the SMP protocol framework development environment Experience building SCADA protocol libraries, DNP3, Modbus, IEC 61850 GOOSE, etc. Experience building adapters in Publish-Subscribe protocols, such as NATS or MQTT Experience with configuration as code paradigm with YAML or JSON Experience with Protocol Buffers Le centre d’excellence des solutions de gestion des ressources énergétiques distribuées (DERMS) du secteur de l’électricité d’Eaton est à la recherche d’un(e) ingénieur(e) logiciel principal(e) pour son emplacement de Montréal (Québec), au Canada. Aperçu du poste : Il n’y a pas meilleur moment pour se joindre à Eaton qu’en cette excitante période de gestion énergétique. Nous repensons l’innovation en adaptant les technologies numériques — appareils connectés, modèles de données et connaissances — afin de transformer la gestion énergétique pour une utilisation de l’énergie plus sécuritaire et durable. Nos équipes collaborent afin de créer les meilleures solutions numériques pour nos clients. Nous sommes à la recherche de talents dans le domaine numérique qui désirent contribuer à établir la direction pour cette transformation numérique et créer de nouvelles façons de travailler et de réfléchir, pour nous-mêmes et pour nos clients. Le centre d’excellence des solutions de gestion des ressources énergétiques distribuées (CoE DERMS) d’Eaton est à la recherche d’un(e) ingénieur(e) logiciel principal(e) pour faire partie de son équipe multidisciplinaire et mondiale afin de concevoir des solutions propres à l’intégrateur en langage C++ à partir des trousses de communication d’Eaton basées sur Linux, compatibles Ethernet et multi-protocoles. Vous ferez partie de l’équipe de notre tout nouveau CoE DERMS en travaillant en étroite collaboration avec les entreprises du secteur électrique, les laboratoires de recherche d'Eaton et des bureaux numériques. Le CoE DERMS permettra d’accélérer les capacités de l’entreprise grâce à l’élaboration d’une connectivité sécuritaire, fiable, intégrée et réutilisable et de plateformes d’IdO, jetant ainsi les bases qui permettront à nos entreprises de concevoir plus rapidement des produits et services novateurs. Dans le cadre de ce poste, vous: Diriger une équipe d'ingénieurs pour développer des bibliothèques de logiciels et des diverses trousses d'outils. Diriger les activités d'amélioration des processus Implanter l'architecture, la conception et le déploiement de la trousse d’outils logicielle et micro-logicielle en mettant l'accent sur la réutilisation, l'évolutivité, la maintenabilité et la sécurité. Participer à l'évaluation et à la sélection de fournisseurs tiers de matériel, de logiciels et de services. Diriger le développement d'un modèle de données unifié, d'adaptateurs de protocole et d'une interface de programmation d'application (API) pour la bibliothèque DERMS. Diriger l’implantation d'une architecture embarquée qui utilise des fichiers de configuration pour mettre à jour les paramètres logiques, les politiques d'application ou l’adressage de protocoles. Critère d’embauche: Maîtrise des langages C++ et Python Compréhension détaillée des concepts clés informatiques (structures de données, algorithmes, etc.) Connaissance pratique des protocoles réseau IP (TCP/UDP/IP) Expérience en utilisation de schémas de conception orientée objet Expérience en conception de machines d’états Expérience en conception de micrologiciels Linux embarqués Compréhension complète de Linux Kernel et des chaînes d’outils associées Expérience en création ou configuration de paquets Linux de tiers Expérience en conception d’essais unitaires Qualifications Basic qualifications: Bachelor’s or master’s degree in Computer Science, Software Engineering or Electrical Engineering or a closely related mathematical, technical, or science degree from an accredited institution 7+ years of progressive experience designing and developing firmware and software for network-enabled products. 4+ years of progressive experience building SCADA protocol libraries, such DNP3, Modbus, IEC 61850 GOOSE, etc. Experience with application programming interface (API) design Proven and demonstrable skills developing embedded systems using the C++ programming language in a Linux or RTOS environment. Experience with CI/CD DevOps tools Experience with version control software (Git) Experience with the SMP protocol framework development environment Experience building adapters in Publish-Subscribe protocols, such as NATS Experience with configuration as code paradigm with YAML or JSON Experience with Protocol Buffers Candidate must reside in the province of Quebec, Canada. Remote work outside of Quebec is not possible. Preferred: Masters or Ph.D. in Computer Science, Software Engineering, or related discipline Experience with application programming interface (API) design Experience with Rust and Python Experience with model-based design and automated code generation in Matlab/Simulink Experience with TCP/IP, UDP and MQTT Experience with Industrial control protocols, such as CAN bus etc. Experience with state machine design Experience developing toolkits / SDKs used in diverse applications Experience using cloud computing platforms (Azure) and services Experience building software in a microservices architecture Experience with IEC 61131-3 structured text programming Experience with static and dynamic code analysis tools Experience with Agile Development Processes Experience with IoT security implementation - Linux network device security, developing with secure network protocols, participating in, and performing security audits. Experience working with global teams. Bilingualism (English & French) Compétences essentielles: Baccalauréat en informatique, génie logiciel ou génie électrique, ou un diplôme en mathématiques, en technique ou en science d’un établissement universitaire reconnu Dix ans ou plus d’expérience pertinente en conception et développement de logiciels d’appareils réseaux. Compétences solides en développement de systèmes embarqués à l'aide du langage de programmation C++ dans un environnement Linux ou autre système d’exploitation temps-réel. Expérience avec le processus CI/CD DevOps Expérience avec les logiciels de contrôle de version (Git) et les outils de suivi des bugs (JIRA) Expérience pratique dans la direction d'équipes techniques dans le développement micrologiciel et logiciel Le candidat doit résider dans la province de Québec Compétences souhaitées: Maîtrise ou doctorat en informatique, génie logiciel ou dans une discipline connexe Expérience en conception d’interface applicatif de programmation (API) Expérience avec les bibliothèques Boost en C++ telles que ASIO et Unit Test Expérience en conception basée sur des modèles et de la génération de code automatisée avec Matlab/Simulink Expérience avec les protocoles TCP/IP, UDP et MQTT Expérience avec des protocoles IP industriels (Modbus, CANbus, etc.) Expérience dans la conception de trousses/trousses de développement logiciel (SDK) utilisées dans différentes applications Expérience en conception de machines d’états Expérience en développement de trousses d'outils / SDK utilisés dans diverses applications Expérience dans l'utilisation de plateformes et de services de calcul de l’infonuagique (Azure) Expérience dans la création de logiciels dans une architecture de micro-services Expérience avec la programmation de texte structuré IEC 61131-3 Expérience avec des outils d’analyse de code statique et dynamique Expérience des processus de conception agile Expérience de la mise en œuvre de la sécurité IdO - Sécurité des périphériques réseau Linux, développement de protocoles réseaux sécurisés, participation et réalisation d'audits de sécurité. Expérience de travail avec des équipes globalisées. Bilinguisme (anglais et français) Information additionnelle: Des déplacements peuvent être nécessaires jusqu'à 10 % du temps Opportunité de travailler avec de nombreuses équipes inter-fonctionnelles Exposition à des hauts dirigeants au sein des entreprises du secteur électrique What you will get from us Eaton’s mission is to improve the quality of life and the environment through the use of power management technologies and services. We provide sustainable solutions that help our customers effectively manage electrical, hydraulic and mechanical power – more safely, more efficiently and more reliably. Making what matters work at Eaton takes the passion of every employee around the world. We create an environment where creativity, invention and discovery become reality, each day. It’s where bold, bright professionals like you can reach your full potential—and where you can help us reach ours. Eaton’s 2020 revenues were $17.9 billion, and we sell products to customers in more than 175 countries. We have approximately 85,000 employees. We make work exciting, engaging and meaningful for our employees through our dedication to tackling some of the toughest power management challenges on the planet and by never losing sight of what matters. Our culture is built on a strong commitment to practicing our core values and supporting our employees with the tools they need to succeed. We pledge to always foster a diverse and inclusive environment, including inclusion resource groups that bring together employees who share a common purpose, interest or background. In the past year, our company has received top employment recognition by the Human Rights Campaign and almost fifty percent of our Board of Directors represented diverse groups. When we embrace the different ideas, perspectives and backgrounds that make each of us unique, we — as individuals and as a company — are stronger. We have demonstrated our passion for sustainability with the recent announcement of cutting carbon emissions from the company’s operations by at least 50 percent by 2030. We are ethical, passionate, accountable, efficient, transparent and committed to learning. We are confident we can deliver on our promise to improve the quality of life and the environment because of the attributes that our employees embody. We are committed to ensuring equal employment opportunities for all job applicants and employees. Employment decisions are based upon job-related reasons regardless of an applicant's race, color, religion, sex, sexual orientation, gender identity, age, national origin, disability, marital status, genetic information, protected veteran status, or any other status protected by law. Job: Engineering Region: North America – Canada Organization: ES AMER Sector Job Level: Individual Contributor Schedule: Full-time Is remote work (i.e. working from home or another Eaton facility) allowed for this position?: Yes Does this position offer relocation?: Relocation from within hiring country only Travel: Yes, 10 % of the Time

Get email alerts for the latest"Principal API SW Engineer (Remote) jobs in Montreal"