Name: Toni Nikkanen
Address:Berlin, Germany
Contact: tn@iki.fi +4915126144848
Summary: Software Engineering experience in embedded, wireless, automotive, industrial, telecommunications, smartphones, web, C/C++, Bluetooth, Qt/QML, C#, Linux, Android, open source, scripting.
Management experience: team leading, line management, interviewing and hiring, customer interfacing, invoices, contractors.
This CV is available at: http://nikkanen.org/cv.html Please visit my blog at http://www.tuug.fi/~toni/blog/
View Toni Nikkanen's profile on LinkedIn Toni Nikkanen

Employment History:

OpenSynergy GmbH
Senior Software Engineer
2012-07 - present
Development of new features, bug fixes, customer support and testing for the Blue SDK Bluetooth stack - Classic Bluetooth and Bluetooth Low Energy.
Improvements and new feature development for protocols and profiles such as HID, PAN, SPP, SAP, AVRCP, VVMP. Developed new profile implementation: IPSP (6LowPAN over BT LE).
Attended IOP testing conferences (UPF) 4 times. Did validation testing on multiple profiles and protocols. Used tools such as FTS, PTS, Codenomicon Defensics.
Integrating software deliveries for boards based on Freescale I.MX53 and I.MX6 SoCs. Blue SDK Bluetooth stack and WiFi chip integration into Android.
Virtualized Linux and Android development for the automotive industry, customer training workshops, SW and HW supplier interfacing.

Teleca Germany GmbH
R&D Site Manager, Berlin
2011/07 - 2012/04
Starting Teleca's new Berlin office, hiring software engineers, line manager role, supervise multi-site projects, bid work, act as a customer interface, represent the company in technical events, approve invoices. Our team implemented projects with technologies such as NFC, in-door navigation (HTML5 mobile app), automotive, smart home/energy metering for Android, and location based services.
I was also the lead Qt expert and trainer in Teleca Germany.

Teleca Germany GmbH
Software Specialist
2010/10 - 2011/06
Subcontracting to Nokia Gate5 in Berlin. Software development and prototyping in the areas of Qt/QML, MeeGo, Symbian, web front- and back-end development (Javascript, ZEND Framework, PHP). Supported Teleca in preparing bids, competence development and contributed technical expertise in the areas of Qt and MeeGo.

Cybercom Group Oy, Finland
Senior Software Design Engineer
2001/05 - 2010/09
Implementing the Nokia N9 Gallery application using Qt, including unit testing, test driven development, debian packaging, git, continuous integration and test automation systems for 2.5 years
Earlier projects briefly:

  • an Automotive Head Unit that interfaces with vehicle subsystems using CAN, CANopen, ethernet, serial and other buses and which runs on Linux with Qt Embedded on top of the frame buffer device. Robustness and boot-up time optimization. I designed the system architecture including the decision to use Qt, 1 year.
  • an C#/.NET data collecting application on a touch-screen Windows based Tablet PC, 1 year.
  • an industrial reporting system for CAN devices (ship cargo handling equipment) using Linux and a C++ application with web, SMS and e-mail interfaces, 1 year
  • network technology consulting (SCTP protocol for IP telephony signaling plane) for a TETRA network and handset equipment maker, 3 months.
  • GPRS/EDGE network element (BSC-SGSN) real-time software design, implementation in C language, test planning and testing. BSSGP/NS layer protocols, IP transport, 4 years.

Multimediatoimisto Kuulalaakeri, Finland
2000/02 - 2001/04
Application Developer
Designing and implementing intra-, extra- and internet applications
mainly with PHP and MySQL or Oracle. Some C++ and Perl development,
and Unix server maintenance.

Mimedia, Finland
1999/09 - 2000/03
Free-lance Web Application Developer (Perl)

Affecto, Finland
1998/12 - 1999/06
Free-lance programmer
Development of Nokia Telecommunications' database reporting using
the Business Objects tools. Rewriting and fixing legacy Oracle
reports for Y2K compliance using Perl.


Language skills:
Finnish, native
English, fluent
Swedish, basics
German, basics (A2, learning)
Certifications:
Nokia Certified Qt Developer
Software engineering skills:

Work experience on languages: C, C++, QML, Perl, PHP, JavaScript, C#, SQL, HTML, XML
Familiarity with Java and Python
Operating systems: Linux since 1993, Maemo, MeeGo, Android, FreeBSD, OpenBSD, ChorusOS, PikeOS, ELinOS, Mac OS X, Windows 3.0 - 10
Hardware platforms: Freescale i.mx53, i.mx6q ARM boards, Raspberry Pi
Databases: MySQL, PostgreSQL, Oracle, Firebird, SQLite, Gnome.org tracker
Protocols, connectivity:
Bluetooth Classic and Low Energy
Android Platform Wifi and Bluetooth frameworks, RIL telephony framework
TCP/IP networks and protocols, including SCTP
GPRS/EDGE core network protocols
CAN and CANopen protocols
D-Bus
Tools, libraries, frameworks:
Bluetooth Profile Tuning Suite (PTS), Codenomicon Bluetooth test suites, Frontline protocol analyzer (FTS) for Bluetooth Android platform/native development
GNU tools (gcc, gdb, gcov, emacs, etc.)
git, ClearCase and Subversion version control systems
U-Boot bootloader
Qt, QML, Qt Quick, Qt embedded
Debian .deb packaging
Glib, gstreamer
Emulators: Qemu, bochs, pearpc
Scrumworks Pro, Bugzilla
ZEND Framework, NetBeans, Eclipse
Apache webserver and related modules
Visual Studio 2005, 2008
Methods:
Agile/Scrum
Test-driven development
Traditional waterfall model
Continuous integration
Test automation
Administrative tools:
SalesForce, NetSuite, Dynamics AX
Business areas:
Telecom/Network elements
Telecom/Mobile devices
Vehicle Electronics/Automotive/IVI
Embedded industrial applications
Business Intelligence

Education:
University of Turku
major: Computer Science
minors: mathematics, business economics
1995/09 - ongoing - missing completion of Bachelor's thesis
Courses:

Managing Remote Teams
2011/10
Two-day course about managing remote/virtual teams and remote communication
Organizer: Global Integration

Training the Trainer
2011/01
Two-day course for technical trainers on how to be an effective trainer.

Advanced Qt training
2009/10
Organizer: KDAB
Two-day course on advanced Qt topics.

Test-driven development
2009/11
Organizer: Reaktor Innovations
Two-day hands-on course on tdd principles and real-life usage.

GPRS Advanced
2003/12
Organizer: Teleware, prof. Hannu Kari
One-day advanced course on GPRS features and issues

GPRS Signaling
2003/10
Organizer: APIS
Three-day course on GPRS signaling plane protocols

Advanced C for embedded systems
2003/01
Organizer: Tieturi
Two-day course focusing on advanced topics in programming portable, optimized C code for embedded systems.

Oracle SQL
1999/03
Organizer: Oracle
Three day Oracle SQL course.

C basic course
1991
Organizer: Kotka Polytechnic
Basics of the C programming language

Technical conference attendance

Qt Developer Days, Munich, October 2011
Droidcon.de, Berlin, March 2011
MeeGo Conference, Dublin, November 2010
Maemo Summit, Amsterdam, October 2009


Responsible Positions:

Finnish Unix User's Group ry
1999-2001
Member of the board

Turku Unix User's Group ry
1997-2011
Member of the board 1997-2005, vice chairman 1999-2006 and 2011, Chairman 2007-2010
Operating the association's Unix equipment and network
Operating the computer science student project Linux server 2001-

Delphine MUD ry
1999-
Member of the board
Operating the association's Linux/FreeBSD server 1997-
Delplhine MUD is an online virtual world / social community system that has been operating since 1997.

Housing Company as. oy Pikkumetsa
2010
Member of the board