Electronic product development inevitably implies software development too - and perhaps nowadays this is the most important part of any project.
We have been providing embedded software solutions since available memory was measured in a few tens of bytes!
Although most of our product software development work is now in 'C', we have also used and developed specialised languages for certain applications.
Our experience of using a wide range of microprocessor families naturally also means working in assembler when required.
We make use of third party real-time kernels where appropriate and have developed experience of a number of these over the years.
More recent systems have used embedded Linux.