GENTEX AT A GLANCE:
At Gentex Corporation, we’ve created an environment where great ideas and great people can thrive. Leveraging a history that spans over 130 years, Gentex is a global leader in personal protection and situational awareness solutions for defense forces, emergency responders, and industrial personnel operating in high performance environments. Join our multinational team of exceptional and dedicated employees around the world and work on challenging and rewarding projects, grow your skills, and advance your career all while making a positive difference in the lives of our customers. Together, you and Gentex can build a career that’s uniquely yours.
MINIMUM QUALIFICATIONS:
Individual with extensive implementation experience in open source project contribution, and software production work.
Continuing from education, 5-years work experience is required. The individual shall have work experience in working closely with cross-domain engineer team members to collaborate and design for new hardware product that loads with software. The involved breadth of knowledge is wide, and we expect this role to be open to learn and work with unfamiliar technology. A strong results driven leadership style is required since many of the system and product are still work in progress. The individual must show experience where critical design decision were made in past work experience and be able to explain the reason in detail.
This individual must have selective work experience from the following topics: Timing critical control system application, GUI / UX design, embedded Linux, network setup for both client and server, Linux kernel modification, deployment of full stack web server. iOS application development. This individual must have proficient skill level in git, C++17, and Python to work with existing codebase and team members.
The individual shall have completed his/her BS or MS degree in Computer Science or Electrical Computer Engineering at an accredited university.
ABOUT THE JOB!
This role is to be the pioneer on defining the department software development road map. The work will be involved with wide technical fields for the primary goal of supporting new product development. This role will be a main influencer who defines the tech stack used in product deployment, internal production process, and supporting infrastructure. Actual implementation and integration of all tech stack are going to be majority of this role’s responsibility.
The involved domain includes but not limits to embedded application development, embedded kernel development, graphical user interface design, frontend and backend web application, CI/CD infrastructure setup, mobile application development, software unit testing, design in consideration of encryptions and security principles.
Gentex offers a robust benefit package- including, but not limited to, medical coverages, 401k, paid time off and excellent work schedules including a 9/80 work week.
KNOWLEDGE, SKILLS AND ABILITIES:
- Strong business software skills using Microsoft eco system (Office, Outlook, and Teams).
- Proficient in git with good commit hygiene. Be able to work with versioning semantic.
- Capable of using bash script to accomplish tasks or application setting on client.
- Capable of using SSH to develop in dev container or remote server.
- Proficient in C++17 or above. Be able to choose sensible data structure for proper application. Be able to delicately manage hardware memory. Be able to code in template meta programming. Be able to use build tools like CMake, Ninja, Make, GCC, and any other GNU tools.
- Proficient in Python to integrate with existing analysis code base. Be able to write helper script in python. We do not accept code written in Jupyter Notebook. All code must be fully executable.
- Proficient in CI / CD pipeline in Github self-hosted runner where not just being a user but to setup the entire build and test process for production. Resource is not limited to Github only. Drone CI, Jenkins, or any other CI tool are welcome.
- Proficient in Docker and any other application deployment tools. Be able to choose proper distro for the application and deployment. Be able to work with distroless environment.
- Strong application GUI and UX skill using Qt6 QML and React frontend. Be able to design UI with using tools such as Photoshop, Affinity, or Figma.
- Strong skill in designing backend server setup using JavaScript, Node, Express, SQL. Be able to operate the stack in resource limited hardware. Be able to construct RESTfull API for both internal and customer facing endpoints. Be able to use SQL query without ORM.
- Strong skill in developing timing critical embedded application using FreeRTOS in STM32 hardware with vendor HAL. Be able to work with various of hardware peripheral and communication protocol. Be able to work with all microcontroller internals that includes timer, watchdog, DMA, bootloader, and linker. Be able to work with state machine, singleton, and builder design pattern. Be able to work with event driven programming. Be able to perform testing and debugging on hardware with using JTAG or SWD on top of logic analyzer.
- Strong skill in developing embedded Linux with using U-Boot, modifying kernel module, device tree overlay, and device driver. Be able to configure user space with systemd. Have knowledge in Yocto.
- Capable of understanding network structure and be able to deploy application with employing all necessary configurations. Be able to work with DNS, TLS/SSL, HTTPS, TCP/UDP, websocket, callback, webhook, and various file transfer method in application layer.
RESPONSIBILITIES:
- Experience in developing application using C.
- Experience in developing application using Electron
- Capable of using message queue and job queue in either SQL (PGMQ or pg-boss) or Redis.
- Have knowledge in WASM and be able to support analysis of using it for cross platform development.
- Capable of cross compile application for all possible targeted operation system.
- Experience in iOS application development.
- Knowledge in using electrical bench testing tools. This includes O-scope, power supply, wave generator, and multimeter.
- Experience in over the air update infrastructure and application setup.
- Knowledge in cryptography, encryption, and software security implementation.
- Experience in FPGA development using VHDL and / or Verilog.
- Experience in DSP development.
- Experience in Software or SaaS product development.
- Capable of writing or reading Matlab code.
- Experience with one additional strong typed programming language (excluding Java).
- Onboarding
- Understand company structure & purpose, and existing product lines.
- Train and follow protocol for security, safety, QMS, meeting & business etiquette.
- Design and Development
- Commit to New Product Development under the command of department director and program manager
- Setup necessary tools to help achieving product design goals.
- Educate team members about the use of new system or tools designed by the individual.
- Document all design effort and release through company process.
- Create new company process to better fit for software development cycles.
- Prototype Verification Testing
- Create test plans and reports for product verification and validation.
- Perform tests according to test plans for all designed works.
- Write clear and concise engineering reports to document test results.
- Other
- Perform all assigned tasks in accordance with established company ISO 9001/AS 9100 procedures and work instructions.
SUPERVISION:
Yes
TO APPLY:
Visit: https://gentexcorp.com/careers/
LOCATION: Gentex’s Rancho Cucamonga facility is in Rancho Cucamonga, CA is a city of about 177,000 residents located just south of the foothills of the San Gabriel Mountains and Angeles National Forest in San Bernardino County, California, United States. About 37 miles east of Downtown Los Angeles, Rancho Cucamonga is the 19th most populous city in southern California and the 27th state-wide. The city's seal, which centers on a cluster of grapes, alludes to the city's agricultural history including winemaking. Also, the Ontario Reign Hockey and Quakers Baseball teams are located 20 minutes from the Rancho Cucamonga location.
Gentex Corporation is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard for any applicable state or federal protected class. Gentex is an E-Verify Participant. Pre-employment drug/alcohol/background screening is required.