Curriculum Vitae

Personal Details:

Name: Magnus Westin
Mobile Number: +46 (0)70 30 46 527
EMail: magnus [dot] westin [at] birdstep [dot] com
Address: Hannebergsgata 32
17168 Solna


Programming languages

  • C/C++, with MS Visual Studio. 20+ years experience both at work and home.
  • C++ on Linux 3 years of experience.
  • C# with ASP.NET. Some experience, have done a small database driven website.
  • Objective C. Little experience, done a small iPhone app.
  • Python. Little experience, enough to be able to read and understand.
  • Assembler. Little experience, enough to help debugging C++ programs.
  • Visual Basic (pre .NET). 4 years experience.
  • Pascal. My first language I learned never used it in a professional environment.
  • PHP. Built some web sites with this. Comfortable programming in it.
  • Java for Android 1 year of experience.
  • Windows 3 and up to the latest Windows version (both client and server). 15+ years and using it every day.
  • Linux (FC). What I use primarily at home and for all my private programming.
  • Android
  • MS DOS. What I used before Windows 3.
  • Visual C++ Dev environment
  • Eclipse, C++ and Java for Android part
  • Visual Basic 5.0 - 6.0
  • Oracle 7.3, 8
  • MS SQL 6
  • GSM and CDMA Devices. Programming against phones, usb devices and pc cards, controlling these devices.
Home projects
At home I'm currently building a massive multiplayer game with a couple of friends:
We use the following technologies.
  • OpenGL via OGRE framework
  • Sockets via EPOL on Linux
  • Bullet for game physics
  • The game is crossplatform on Linux, OsX and Windows and developed using C++

Work Experience:

Birdstep Technology
Job Title: Director Client Engineering
Division: Development
Start Date: 2003-09-07
End Date: Still working
Employment Type: Permanent


  • Visual C++
  • Java for Android
  • Windows 2000, XP, Vista, Win7 and Win8
  • Android

Birdstep software

Birdstep Technology is a software development company providing seamless connectivity and mobility client software for mobile data users on laptops, tablets and smart phones.

My work is in the mobility part of the company, where I mostly responsible for base functionality and communication with the hardware. In the last four years I have been responsible for the complete software architecture. I also assist the IT department with network and server knowledge. I was part of the team that built the corporate network we have.

Since October 2010 I am Director Client Engineering, which means I have the responsibility of the client engineering department and its employees. I'm responsible for all our client applications on Windows Classic, Windows Metro, OsX, Android and iOS.

Tradevision AB
Job Title: Sr. Software Architect
Division: Development
Start Date: 2002-11-21
End Date: 2003-01-31
Employment Type: Permanent


  • Visual C++ .NET (7.0)
  • Windows 2000

Tradevision software

Tradevision made software to handle logistics in the freight business. My role was to be the lead C++ programmer at Tradevision. But they were bought by a Canadian company (Descartes Systems Group) and the development department was closed and all software moved to their HQ in Canada.

General Wireless Scandinavia AB
Job Title: Sr. Software Architect
Division: Development
Start Date: 2001-11-01
End Date: 2002-11-21
Employment Type: Permanent


  • Visual C++ .NET (7.0)
  • Windows 2000

General Wireless software

General Wireless makes software so you can use SMS and MMS from you windows desktop. I was part of a team that made a windows client and a client that integrated with MS Outlook. My main responsibility was to write the client communication with the SMS server.

RM Rocade AB
Job Title: Software Architect
Division: Development
Start Date: 1998-10-05
End Date: 2001-11-01
Employment Type: Permanent


  • Visual C++ 6.0
  • Oracle 7.3
  • Oracle 8
  • MS SQL 6
  • Windows NT 4.0, Windows 2000

RM software

RM Rocade makes software for the airline industry. My work at RM was in a small group making base classes and generic functionality that all the other teams used to build the end products. I was personally responsible for a graphics system used to display Gantt graphs. I was also part of the design group and the research group.

KM Elteknik AB
Job Title: Software Architect
Division: Development
Start Date: 1997-02-03
End Date: 1998-10-05
Employment Type: Permanent


  • Visual Basic 5.0
  • Visual C++ 6.0
  • Oracle 7.3
  • MS SQL 6
  • Windows 3.11 and Windows NT 4.0

Nyge PLA project

Order and planning system for Nyge Aero AB. We used Visual Basic as programming language and Oracle as database. The system is used by Nyge Aero personnel and the Swedish armed forces. The software handles planning of airplane and personnel resources and orders from customers. It also has a simple auto planer that makes a schedule based on available airplanes and pilots.

Debatt 2000 project

Inventory and Invoice system for Swedish power suppliers. The system keeps track of customers and the gauges installed at the customers facilities. It will also automatically read the reports generated by the gauges and generate invoices. It can also make predictions about future power consumption based on previous year's statistics. This project was a rewrite of an old DOS application to a Windows NT application with Oracle as database.

My role in this project was as lead programmer and specifically designer of the database layer in VB5.

updated: 2013-08-19