Staff Data Software Developer - Control Plane
Markham Elevation Centre - Markham Elevation Centre
Job Description
Work Arrangement:
Remote- The position does not require employees to be on-site full-time to perform most effectively. The employee’s role allows them to work off-site on a permanent basis.
About Us:
At General Motors, we envision a future characterized by zero crashes, zero emissions, and zero congestion. We are pioneering the next generation of vehicle compute platforms, revolutionizing automotive software development, and integrating seamless connections between cloud and edge resources. Join us as we lead the way towards a sustainable and safe automotive future.
We are seeking a talented Staff Software Engineer to join our dynamic engineering team.
Job Description:
We are looking for a skilled Staff Software Engineer with a deep understanding of embedded SW development to develop, optimize, and maintain our embedded data Control Plane infrastructure. The embedded Control Plane software is critical for managing data collection from our vehicle systems. The ideal candidate will have a strong background in software development (C/C++ and/or Java), a passion for open-source technologies, and experience in managing and scaling data flows. Preference is to hire someone who can work in a hybrid model (3 days a week) from Markham or Oshawa offices of General Motors of Canada Company, however, we are also open to remote candidates.
Key Responsibilities:
Software Development SME: Be an expert for SW architecture, design patterns, best practices, and SDLC
Drive Thorough Solutions: Guide in-depth design, failure mode, test and debug analyses for teams
SW Development: Hands-on coding for feature development, maintenance, and bug fixes
Quality Assurance: Conduct unit, integration, and functional testing on hardware
Code & Test Reviews: Provide expert reviews to ensure code quality
Comprehensive Documentation: Deliver and advocate for clear and complete project documentation
Mentorship and Team Development: Mentor junior and senior peers, and support team growth
Establish Best Practices: Promote best practices within the software community
Contribute to Team Energy: Be an integral part of a dynamic, growing team, contributing positively to team culture and success
Additional Job Description
Basic Qualifications:
Bachelor’s degree in computer science/engineering, Software Engineering, Electrical Engineering or related technical degree
10+ years relevant embedded SW development experience (C/C++ and/or Java)
Development of Data Control SW for distributed systems
Development for Android, Linux, and/or QNX environments
Working knowledge of CI/CD Technologies
Experience integrating effective SW Observability
Experience in SW Test Automation (Linux/Unix shell scripting, Python, JUnit, GTest)
Preferred Qualifications:
Experience coding in languages other than C/C++, Java
Implementation of observability in embedded environments (Fluent Bit, OpenTelemetry, or equivalents)
Experience in Cloud Computing (Microsoft Azure)
Experience with telecommunication networks and security
Expertise in edge, cloud, and IoT technologies
Proficiency in Service-Oriented Architectures and Microservices principles
Familiar with major automotive vehicle systems
Benefits Overview:
The goal of the General Motors of Canada total rewards program is to support the health and well-being of you and your family. Our comprehensive compensation plan currently includes the following benefits, in addition to many others:
Paid time off including vacation days, holidays, and supplemental benefits for pregnancy, parental and adoption leave.
Healthcare, dental, and vision benefits.
Life insurance plans to cover you and your family.
Company and matching contributions to a Defined Contribution Pension plan to help you save for retirement.
GM Vehicle Purchase Plan for you, your family and friends.
Compensation:
The compensation information is a good faith estimate only. It is based on what a successful applicant might be paid in accordance with applicable state laws.
The base salary range for this role is between $119,900 to $190,700 CAD. The actual base salary a successful candidate will be offered within this range will vary based on factors relevant to the position.
À propos de nous :
Chez General Motors, nous envisageons un avenir caractérisé par zéro accident, zéro émission et zéro congestion. Nous sommes les pionniers de la prochaine génération de plateformes informatiques pour véhicules, révolutionnons le développement de logiciels automobiles et intégrons des connexions transparentes entre les ressources cloud et périphériques. Rejoignez-nous alors que nous ouvrons la voie vers un avenir automobile durable et sûr.
Nous recherchons un ingénieur logiciel talentueux pour rejoindre notre équipe d'ingénierie dynamique.
Modalités de travail :
À distance : le poste ne nécessite pas que les employés soient sur place à temps plein pour être plus efficaces. Le rôle de l'employé lui permet de travailler hors site de manière permanente.
Description du poste :
Nous recherchons un ingénieur logiciel qualifié ayant une compréhension approfondie du développement de logiciels embarqués pour développer, optimiser et maintenir notre infrastructure de plan de contrôle de données embarquées. Le logiciel de plan de contrôle embarqué est essentiel pour gérer la collecte de données à partir de nos systèmes de véhicules. Le candidat idéal aura une solide expérience en développement de logiciels (C/C++ et/ou Java), une passion pour les technologies open source et une expérience dans la gestion et la mise à l'échelle des flux de données. La préférence est accordée à une personne capable de travailler dans un modèle hybride (3 jours par semaine) depuis les bureaux de Markham ou d'Oshawa de la Compagnie General Motors du Canada. Toutefois, nous sommes également ouverts aux candidats à distance.
Responsabilités principales :
Expert en développement logiciel : soyez un expert de l'architecture logicielle, des modèles de conception, des meilleures pratiques et du cycle de vie du logiciel
Promouvoir des solutions complètes : guidez les équipes dans la conception approfondie, les modes de défaillance, les tests et les analyses de débogage
Développement logiciel : codage pratique pour le développement de fonctionnalités, la maintenance et les corrections de bogues
Assurance qualité : effectuez des tests unitaires, d'intégration et fonctionnels sur le matériel
Examens du code et des tests : fournissez des examens d'experts pour garantir la qualité du code
Documentation complète : fournissez et défendez une documentation de projet claire et complète
Mentorat et développement d'équipe : encadrez les pairs juniors et seniors et soutenez la croissance de l'équipe
Établissez les meilleures pratiques : promouvez les meilleures pratiques au sein de la communauté logicielle
Contribuez à l'énergie de l'équipe : faites partie intégrante d'une équipe dynamique en pleine croissance, contribuant positivement à la culture et au succès de l'équipe
Qualifications de base :
Licence en informatique/ingénierie, génie logiciel, génie électrique ou diplôme technique connexe
Plus de 10 ans d'expérience pertinente en développement de logiciels embarqués (C/C++ et/ou Java)
Développement de logiciels de contrôle des données pour les systèmes distribués
Développement pour les environnements Android, Linux et/ou QNX
Connaissance pratique des technologies CI/CD
Expérience dans l'intégration d'une observabilité SW efficace
Expérience dans l'automatisation des tests SW (scripting Linux/Unixshell, Python, JUnit, GTest)
Qualifications préférées :
Expérience de codage dans des langages autres que C/C++, Java
Mise en œuvre de l'observabilité dans des environnements embarqués (Fluent Bit, OpenTelemetry ou équivalents)
Expérience en Cloud Computing (Microsoft Azure)
Expérience des réseaux de télécommunication et de la sécurité
Expertise dans les technologies Edge, Cloud et IoT
Maîtrise des architectures orientées services et des principes des microservices
Connaissance des principaux secteurs de l'automobile Systèmes de véhicules
Aperçu des avantages :
L'objectif du programme de rémunération globale de General Motors du Canada est de soutenir la santé et le bien-être de vous et de votre famille. Notre programme de rémunération complet comprend actuellement les avantages suivants, en plus de nombreux autres :
Congés payés, y compris les jours de vacances, les jours fériés et les avantages supplémentaires pour la grossesse, le congé parental et le congé d'adoption.
Avantages en matière de soins de santé, de soins dentaires et de soins de la vue.
Plans d'assurance-vie pour vous couvrir, vous et votre famille.
Cotisations de l'entreprise et cotisations de contrepartie à un régime de retraite à cotisations déterminées pour vous aider à épargner pour la retraite.
Plan d'achat de véhicules GM pour vous, votre famille et vos amis.
Rémunération :
Les informations sur la rémunération ne sont qu'une estimation de bonne foi. Elles sont basées sur ce qu'un candidat retenu pourrait recevoir conformément aux lois de l'État en vigueur.
La fourchette de salaire de base pour ce poste se situe entre 119,900 $ CA et 190,700 $ CAD. Le salaire de base réel qui sera offert à un candidat retenu dans cette fourchette variera en fonction de facteurs pertinents pour le poste.
About GM
Our vision is a world with Zero Crashes, Zero Emissions and Zero Congestion and we embrace the responsibility to lead the change that will make our world better, safer and more equitable for all.
Why Join Us
We aspire to be the most inclusive company in the world. We believe we all must make a choice every day – individually and collectively – to drive meaningful change through our words, our deeds and our culture. Our Work Appropriately philosophy supports our foundation of inclusion and provides employees the flexibility to work where they can have the greatest impact on achieving our goals, dependent on role needs. Every day, we want every employee, no matter their background, ethnicity, preferences, or location, to feel they belong to one General Motors team.
Diversity Information
General Motors is committed to being a workplace that is not only free of discrimination, but one that genuinely fosters inclusion and belonging. We strongly believe that workforce diversity creates an environment in which our employees can thrive and develop better products for our customers. We understand and embrace the variety through which people gain experiences whether through professional, personal, educational, or volunteer opportunities.
We encourage interested candidates to review the key responsibilities and qualifications and apply for any positions that match your skills and capabilities.
Equal Employment Opportunity Statement
Accommodation is available for applicants with disabilities. Should you be contacted by General Motors of Canada, please advise if you require accommodation. General Motors of Canada values diversity and is an equal opportunity employer.
ApplyJob Profile
Hybrid model preferred Open to remote candidates
Benefits/PerksComprehensive compensation plan Dental Dental benefits Healthcare Benefits Life Insurance Paid Time Off Retirement contributions Vision Vision Benefits
Tasks- Conduct testing and reviews
- Documentation
- Document projects
- Establish best practices
- Feature development and maintenance
- Mentor team members
- Software architecture and design
Android Azure Benefits C C++ CI/CD Cloud Computing Compensation Data Control Software Distributed Systems Edge computing Embedded Software Development Engineering GTest Integration IoT technologies Java JUnit Linux Linux/Unix Shell Scripting Mentorship Microservices Microsoft Azure Python QNX Security Service-oriented architectures Software Observability Software Test Automation Telecommunication Networks
Experience10 years
EducationBachelor's degree in Computer Science Bachelor's degree in Electrical Engineering Bachelor's degree in engineering Bachelor’s degree in software engineering Computer Science Engineering Related technical degree Software Engineering
Certifications TimezonesAmerica/Edmonton America/Moncton America/Regina America/St_Johns America/Toronto America/Vancouver UTC-3 UTC-4 UTC-5 UTC-6 UTC-7 UTC-8