Job Description and Responsibilities:
At Coherent Scotland we develop laser systems that help people. Our systems are deployed in a wide variety of markets including renewable energy, microelectronics, fundamental research, life sciences and medicine. Our aim is to make a positive impact on everybody’s life by providing customers with lasers with superior reliability and performance.
Coherent Scotland has grown strongly and consistently over the past ten years, even through times of global economic slowdown. We have a healthy product development pipeline which will enable this growth to continue in the future. This will generate a number of exciting opportunities for personal growth within the organization in the years to come.
Coherent Scotland is based at the West of Scotland Science Park in Glasgow and is a subsidiary of Coherent Corp., a global leader in the manufacture of laser products. We are housed in a purpose built facility with research and development, manufacturing and marketing all on one site, which we have recently expanded.
We have a friendly, business orientated work environment and great staff facilities within our modern building, such as an on-site cafeteria. In addition, we offer a competitive remuneration package which includes contributory pension scheme, subsidised private health care and free life assurance. However, if work-life balance is important to you, you’ll also be pleased to know that we operate flexible core hours which provide the opportunity to start your weekend early.
About The Role
This role is for an Embedded Software Engineer to work as part of the product development team responsible for the design, development and test of software for our laser systems. We are looking for a professional Embedded Software Engineer who is capable of contributing to the long-term development of our scalable system platform in addition to the full lifecycle development of individual laser products. This is a great opportunity to work on a broad range of technologies spanning real-time operating systems, embedded computing modules and automated software testing.
Responsibilities will include:
- Develop reliable and clean C code to be used in high-quality laser systems and computing modules.
- Maintain and expand existing libraries with a view to rapid deployment.
- Produce technical documentation as required.
- Planning and estimation of development tasks.
- Coordinate the integration of software with hardware and optics.
- Support legacy software on existing products.
Education and Work Experience:
- Demonstrable software engineering experience in an industrial environment.
- Strong C programming skills and knowledge of using an Object Orientated style approach in the development of C code.
- Ability to develop scalable systems modules and low-level drivers and integrate them into a large code base.
- Strong experience in Real-Time Operating Systems, pre-emptive multitasking and event-driven programming.
- Experience in low-level Microcontroller interfaces, including UART, Ethernet, CAN Bus, I2C, SPI, ADC and DAC.
- Ability to read electronic schematic diagrams and component datasheets.
- Hands-on experience in embedded software and hardware integration, verification and testing. Debugging firmware at the board level on prototypes is essential.
- Programming skills in either Linux or Windows CE
- Use of Version Control Systems and build tools (e.g. Git, Azure DevOps and Jenkins).
- Ability to respond to technical inquiries from other departments and customers in a clear, accurate, and professional manner (both written and in person).
- Able to work in a team environment
- Graduate in Computer Science, Electronic Engineering or another relevant degree.
Preferred Additional Skills
- Closed-loop drive control methods and techniques for industrial applications.
- Familiarity with ARM Cortex-M processor architecture, CMSIS and associated tools.
- Experience with Toradex based embedded computing modules.
- Test-driven development (TDD) experience.
- Python programming language for test scripting.
- C# and Visual Studio/ Visual Studio Code.
- Knowledge of the New Product Introduction (NPI) process and elements of project planning.
- Programming knowledge of FPGAs using Verilog.
- Experience in the software development cycle for medical devices.