Skip to main content
Tallo logoTallo logo
Apply for this opportunity

This job application is on an outside website. Be sure to review the job posting there to verify it's the same.

Software Engineer

Job

GO FOTON CORPORATION

Franklin Township, NJ (In Person)

Full-Time

Posted 3 weeks ago (Updated 2 weeks ago) • Actively hiring

Expires 6/19/2026

Review key factors to help you decide if the role fits your goals.
Pay Growth
?
out of 5
Not enough data
Not enough info to score pay or growth
Job Security
?
out of 5
Not enough data
Calculating job security score...
Total Score
78
out of 100
Average of individual scores

Were these scores useful?

Skill Insights

Compare your current skills to what this opportunity needs—we'll show you what you already have and what could strengthen your application.

Job Description

A highly skilled Embedded Software Engineer to develop and maintain software for embedded systems. The role involves working across Linux-based applications, hardware interfacing, firmware collaboration, and PC-side tools to support device configuration, monitoring, diagnostics and basic management of them.
KEY RESPONSIBILITIES
Develop and maintain industrial-grade embedded Linux applications (C/C++, Python) Customize Linux distributions (Yocto) Develop and debug device drivers and kernel modules Interface with hardware peripherals (UART, SPI, I2C, USB, Ethernet) Collaborate with firmware engineers and understand MCU interactions Develop interfaces to external applications through ex. SNMP etc. Develop PC applications/tools for configuration, visualization, and firmware updates Support full product lifecycle from concept to production
PC APPLICATION DEVELOPMENT
Develop desktop tools for device configuration, firmware updates, and diagnostics using technologies such as: C++ / Qt Python (PyQt, Tkinter) These tools interact with embedded devices via USB, serial, or network interfaces. Develop basic desktop applications and/or API for managing the equipment.
HARDWARE & FIRMWARE INTERACTION
Work closely with hardware and firmware teams to: Understand schematics and data sheets Validate system behavior and signal integrity Debug issues across hardware/software boundaries Interface with microcontrollers and SoCs Perform system-level debugging using tools like GDB, JTAG, logic analyzers Optimize performance for CPU, memory, and
I/O PREFERRED SKILLS
Experience with Yocto or Buildroot Familiarity with Linux kernel and driver development Experience with GUI frameworks (Qt, .NET, or Python-based GUIs) Experience with web-based technology (webserver, Database, Web GUI). Experience with debugging tools (oscilloscope, logic analyzer) Understanding of networking protocols (TCP/IP, sockets, SNMP) Familiarity with fiber optics network Knowledge of firmware and RTOS concepts
ESSENTIAL EDUCATIONAL/EXPERIENCE REQUIREMENTS
Bachelor's or Master's degree in Computer Engineering, Electrical Engineering, or Computer Science 3+ years of experience in embedded systems development
ESSENTIAL SKILLS/TRAITS
Strong programming skills in C/C++ Experience with Embedded Linux systems and tools Knowledge of communication protocols (UART, SPI, I2C, CAN, Ethernet) Experience with version control systems (Git) Strong problem-solving and debugging abilities Strong focus on reliability, safety, and manufacturability in product design.
COMMUNICATION SKILLS
Strong verbal and written communication skills Ability to collaborate across hardware, firmware, and software teams Capable of documenting designs and presenting technical information
WORK LOCATION
This is primarily an on-site role due to hands-on development On-site presence required for lab work, debugging, and collaboration TRAVEL Occasional travel may be required for supplier visits, testing, or customer support.
WORK ENVIRONMENT
This role involves cross-functional collaboration with hardware, firmware, and QA teams. Engineers will work in a lab environment with embedded boards, test equipment, and development tools. To collaborate well with global internal and external teams, early morning or late evening online meetings may be required.