Lattice Overview
There is energy here…energy you can feel crackling at any of our international locations. It’s an energy generated by enthusiasm for our work, for our teams, for our results, and for our customers. Lattice is a worldwide community of engineers, designers, and manufacturing operations specialists in partnership with world-class sales, marketing, and support teams, who are developing programmable logic solutions that are changing the industry. Our focus is on R&D, product innovation, and customer service, and to that focus, we bring total commitment and a keenly sharp competitive personality. Energy feeds on energy. If you flourish in a fast paced, results-oriented environment, if you want to achieve individual success within a “team first” organization, and if you believe you can contribute and succeed in a demanding yet collegial atmosphere, then Lattice may well be just what you’re looking for.
Responsibilities & Skills
This role is to progress the deployment of a ‘model first’ development model to Hardware Design. In this role you will be architecting and developing complex C++ and SystemC models of hardware solutions. As an expert in the space, acting as a leader and mentor to other engineers less versed with this style of development. This will also involve developing Firmware and other Software, including QEMU emulation to generate both model solutions and Firmware development platforms.
Lattice is seeking candidates for the position of Software Development Engineer. This is a full time remote position.
Accountabilities:
Contribute as a member of the Architecture modelling team, developing and validating models under senior guidance
Develop, debug, and troubleshoot models in SystemC and Firmware
Develop, debug python code to process models
Apply firmware development experience to support model-driven design flows
Collaborate with cross-functional teams to improve development methodologies and processes
Qualifications:
BS/MS Electrical Engineering or Computer Science
5–10 years of experience in firmware or embedded software development
Proficient with C/C++ in embedded or hardware-adjacent environments
Knowledge of FPGA logic design or hardware description concepts preferred
Solid foundation in object-oriented programming, data structures, and algorithms
Experience with SystemC, QEMU, or hardware modeling is a plus but not required — we will train the right candidate
Must possess independent problem-solving skills and a willingness to learn new methodologies
Knowledge of Python is preferred
Strong written and verbal communication skills and the ability to work across multiple teams