Headquartered in lowell, massachusetts, macom is certified to the iso9001 international quality standard and iso14001 environmental management standardMacom has multiple design centers, si, gaas and inp fabrication, manufacturing, assembly and test, and operational facilities throughout north america, europe, asia and australiaIn addition, macom offers foundry services that represents a key core competency within our businessThe foundry provides access to, and control of our broad range of proprietary technologies in an asset light, cost effective structure.
Macom sells and distributes products globally via a sales channel comprised of a direct field sales force, authorized sales representatives and leading industry distributorsOur sales team is trained across all of our products to give our customers insights into our entire portfolio.
Our global organization of skilled engineers is driven every day to solve the world’s most demanding wireless and wireline application challengesWe’re proud of our more than sixty years’ of hands-on experience designing and building analog semiconductor technology across the rf to light spectrum
Software developer job description
This position will be responsible for analyzing and contributing to the software architecture, design, development and testing of firmware and graphical user interface (gui) software for embedded electronic platforms used for testing and evaluating semiconductors.
Responsibilities may include the following and additional duties introduced as needed.
Responsible for planning, designing, developing and testing firmware and gui-based software for new and existing semiconductors.
Determine systems software design requirements in collaboration with the hardware designers.
Responsible for all deliverables associated with the software products throughout their design, development, and long-term maintenance.
Design and implement protocols for firmware-to-software serial communication.
Implement and monitor system improvements to increase efficiency.
Provide code mentoring, technical assistance, and collaboration with lab technicians and other personnel who require it.
Provide recommendations for tools, technologies and processes, and contribute to continuous process improvement.collaborate on software engineering policies, standards, and procedures.
Must have: minimum requirements
Bs in electrical engineering, computer science, or software engineering or a minimum of 5 years engineering experience with at least 4 years of professional software development
Expertise in development of gui software for embedded systems using c++, c#, xaml, wpf, mvvm, .net or other similar environments and languages.
Expertise in development of firmware for real-time, embedded applications using c, c++ or equivalent languages.
Experience in device programming and debugging peripheral interfaces including i2c, spi, uart.
Experience with stmicro and atmel processors or similar.
Nice to have
Experience with configuration management tools - subversion tools or equivalent.
Skilled at using oscilloscopes, logic analyzers and other tools to analyze and debug embedded system.
Experience developing software in a regulated environment
Experience with continuous integration, automated system testing and test-driven development
Experience working with distributed or remote teams
Solid communication, presentation, technical writing and organizational skills