Self-driven senior software engineer with over a decade of software design, architecture and development experience in various areas including, but not limited to, cross-platform library development, mobile app development and creating highly scalable web services.
- Strong experience with software development in C++.
- Object-oriented, generic software design and implementation experience. Strong experience with design patterns and UML.
- Good understanding of networks.
- Strong experience with Linux and macOS operating systems.
Implemented multiple prototypes for TV related projects e.g. a program schedule application.
Implemented and deployed an iOS app for the (late) Comoyo View movie streaming service, that was developed for the Nordic market. My responsibilities included developing core pieces of the iPad application in native Objective C, e.g. a networking framework for reliably fetching data from api servers, a media player based on AVFoundation, and interfacing with the Widevine DRM solution and another proprietary DRM. I also focused on getting the best user experience by optimizing applications' performance across the whole stack, from UITableView/UICollectionView-related optimizations to changing the API backends to return data in the most performant and convenient way.
Technologies: Objective C
Participated in improving and fine tuning FirefoxOS project for Telenor.
I was involved in an advertisement project consisting of a modified version of the FirefoxOS allowing users to purchase data packs from within the OS and showing advertisements in exchange for subsidised mobile data. For the server side api server code (written in Node.js), I was the original author and biggest contributor. I was also responsible for the deployment and operational side of the project (which included heavy usage of AWS services).
This project was extended to cover Android users, resulting in a major extension of the server side code and infrastructure and lead to the Wowbox - an Android app with now over 3 million users, with additional features such as displaying subscriber data, local offers, and news and weather updates. I contributed to the server side code, but my main responsibilities were overall architecture of the backend components and devops.
Technologies: Node.js, Amazon Web Services (CloudFormation, EC2, RDS, Elastic Beanstalk, SQS, Route 53), Packer, Puppet
Working on Qt library features on Linux/X11, Windows and Mac OS X, while maintaining the X11 port. Implemented touch and gestures support and worked on an embedded document-oriented database called qtjsondb (with some master-master replication capabilities).
Architected and developed a CORBA-based three-tier system to analyze and control remote electric power substations in power companies via high voltage power lines and other communication channels. My responsibilities included designing and developing both server and client-side components with C++/CORBA and C++/Qt respectively, writing unit-tests, managing software infrastructure (like build tools). I was also engaged in the migration of the existing old-style Borland C++ Builder-based software to a cross-platform and cross-compiler application using MS Visual C++ on Windows, and GCC on Linux. I contributed to establishing development workflows and configuring additional tools, like JIRA (bug-tracking system) and SVN for version control, which enhanced team collaboration.