Share this Job

Software Supervisor

Date: Jul 13, 2021

Location: Garza Garcia, Nuevo León, MX, 66210

Company: John Deere

There are 7 billion people on this planet. And by 2050, there will be 2 billion more... many moving into urban centers at an unprecedented rate. Making sure there is enough food, fiber and infrastructure for our rapidly growing world is what we’re all about at John Deere. And it’s why we’re investing in our people and our technology like never before in our 175-year history. Here the world’s brightest minds are tackling the world’s biggest challenges. If you believe one person can make the world a better place, we’ll put you to work. RIGHT NOW.

Title: Software Supervisor 
Primary Location: Mexico (MX) - Nuevo León JD Shared Svcs-Monterrey 
Function: Product Engineering

Main Responsibilities:

  • Lead/Manage a scrum team of software engineers developing complex embedded Systems. 
  • Act as subject matter expert and application expert as it pertains to the assignment. 
  • Mentor and teach others in the team to build technical capabilities and good software engineering practices.
  • Understand business strategy, objectives and technology to ensure development work is prioritized by business value, work is aligned with objectives and help the team overcome development roadblocks.
    • Work on understanding and explaining requirements, apply system development methodology to identify, analyze, design, build, configure, debug, program, test, and deploy highly integrated complex solutions.
    • This person will be the point of contact between ETEC and our partners from US on conversations related to the scrum team members and projects. 
  • Design new and existing embedded software for graphic displays for robust on/off road vehicles and harsh environments.
  • This position requires complex architectural development, detailed design / analysis, coding, and complex testing / troubleshooting of firmware (embedded software) systems, and advanced algorithm development for applications and low-level board support packages.
  • The systems may include LCD displays, touch screens, Real Time Operating Systems, analog / digital electronics, and keypads.
  • This position requires technical judgment, independent thinking, experience and development approaches to solutions.
  • This person must be customer focused and capable of multitasking between several different tasks and customers daily.
  • This person must be capable of holding technical conversations in English with stakeholders and team members daily. 

What Skills You Need:

  • 5 years in firmware (Embedded Software) development.
  • 5 years of experience in Object Oriented Programming and design patterns in C++ programming language.
  • 5 years of experience with microcontrollers.
  • Experience with QT Framework.
    • Ability to influence without authority to resolve impediments across teams and products.
  • Strong knowledge of Linux Operating System.
  • Strong knowledge on Data Structures and Algorithms.
  • Strong knowledge on version control systems such as GIT.
  • Strong knowledge of scripting languages preferred Python and Bash.
  • Knowledge on test frameworks, preferred Google test & Squish.
  • Experience with debugging tools.
  • Experience with Agile Methodology. 
  • Knowledge on software architecture desired.
  • Real-Time Operating System concepts, task schedulers, and application development.
  • Microcontroller systems (e.g. boot loaders, A/D converters, watchdog timers, interrupt and trap functions)
  • Microcontroller operation and memory organization.
  • Operation and use of compilers, linkers and locators
  • Development and debugging tools (e.g. source level debuggers, oscilloscopes, logic analyzers, multi-meters)
  • Product development processes knowledge.
  • Good written and verbal communication skills (English, Daily and highly technical conversations).

What Makes You Stand Out:

  • Strong Object-Oriented programming and design patterns skills.
  • Technical expertise related to UX/UI design and development.
  • Experience of QML.
  • Strong knowledge on Agile methodologies or certified.
  • x86 and ARM architectures
  • x86 BIOS development
  • Debugging peripherals (e.g. LCD controllers, serial and parallel interfaces, USB, Ethernet, EEPROM, WiFi, DDR)
  • Knowledge on communication networks (e.g. CAN)
  • Knowledge on communication protocols (e.g. J1939, ISO11783)
  • Understanding on VT Displays and ISO11783 Part 6

Education (or equivalent experience):

Minimum B.S. degree in any of the following disciplines: Electrical Engineering, Mechatronics, Digital Systems and Robotics, Computer Science or Advanced Engineering Degree.

This position will be posted for a minimum of 7 business days and unposted when a qualified pool of candidates is achieved.

Candidates must have the necessary work permits to work in the country.

Job Segment: Developer, Manager, Engineer, Electrical, Firmware, Technology, Management, Engineering