About devEmbedded

devEmbedded is my one man consulting company based in Jyväskylä, Finland. My educational background is in embedded systems and signal processing, and I have strong software design skills accumulated both through work and free-time projects, ranging from smallest PIC microcontrollers to developing Windows desktop software.

Education

2007–2014: Master of Science (Engineering), Tampere University of Technology.
Topics: Digital and Computer Systems, Positioning and navigation, Intelligent and adaptive systems.

Work experience

2008–2013: Software developer, OptoFidelity Oy.
My main tasks were development of several video streaming applications for desktop use. I also had a central role in developing the OptoFidelity Video Multimeter , which I also wrote my Master's thesis about.

2014–2017: Senior software developer, Espotel Oy.
I developed embedded code in C and C++ for over 10 customer projects ranging from microcontrollers to embedded Linux. I also developed support and test automation applications using Python, C++ and Qt.

2017– Self-employed, devEmbedded
I have been involved as a consultant in over 20 projects with more than 10 clients. Most of my projects are related to prototyping or updating an existing system, but I have also done a few projects from beginning to a fully functional system. As a reference, here are two open source projects that I have implemented based on customer requirements: focus-stack and ZuluSCSI .

Free-time projects

I have had electronics as a hobby since childhood. You can read about my hobby projects on my blog . Some highlights include:

You can find a lot of my projects on GitHub also.

Areas of expertise

Electronics design

  • KiCAD schematics and layout
  • FreeCAD/Ondsel mechanical design
  • Digital systems design
  • EMC considerations
  • SMPS design
  • Comprehensive lab equipment and prototype manufacturing skills

Embedded software

  • C, C++
  • STM32, ARM Cortex-M
  • Low level debugging
  • Real-time operating systems (Chibios, NuttX, FreeRTOS)
  • Reusable library design (nanopb, mcufont, libfixmatrix)

PC software

  • C#
  • C++ (and Qt)
  • Python
  • Robot Framework
  • LabView
  • GStreamer
  • HTML and web design

FPGA design

  • VHDL
  • Intel/Altera Quartus
  • Lattice iceCube

Algorithm design

  • Fourier tranformations
  • Kalman filters
  • Non-linear algorithms
  • Machine vision
  • Stereo imaging
  • Optimization
  • Brushless motor control