Scroll To View More
John Fehr, C Developer in Winnipeg, MB, Canada
John Fehr

C Developer in Winnipeg, MB, Canada

Member since March 8, 2017
John has over 20 years of software engineering experience on a wide variety of platforms and computer languages. He is extremely quick to pick up new technologies and APIs. He communicates extremely well and has worked in teams of all sizes.
John is now available for hire

Portfolio

Experience

  • C, 15 years
  • iOS SDK, 6 years
  • Objective-C, 6 years
  • Swift, 2 years
  • Swift 3, 1 year
Winnipeg, MB, Canada

Availability

Part-time

Preferred Environment

macOS using the latest Xcode and Swift 3

The most amazing...

...project I've completed on my own is the Mobile Laser Scanner iPhone app which captures a 3D model using your iPhone, rotating platform, and laser line.

Employment

  • Software Engineer
    2007 - 2017
    Cadabra Corp
    • Designed and developed an iOS app written in Objective-C, called Mobile 3D Laser Scanner, which allows the user to capture a video of an object on a rotating platform with a line laser pointed at the object and calculate a 3D-point cloud for that object.
    • Designed and developed an iOS app written in Swift 3, called Follow The Loot, which uses an OCR engine to live capture paper currency serial numbers and tracks where that paper currency travels.
    • Designed and developed an iOS app written in Objective-C, called Sekrets, which encrypts your private files, and allows you to have multiple passwords for different files without storing any of the passwords on the device for better security.
    • Designed and developed an iOS app called DishLoc, written in Objective-C, which uses augmented reality to help you determine a good location to mount your satellite dish and have a clear view of the satellites you are wanting to receive signals from.
    • Designed and developed an iOS game called PuzzleBlox, written in C# using Unity, which lets you solve a variety of photo puzzles by rearranging boxes in 3d.
    • Designed and developed an iOS game called Video Poker Gold Collection, written in Objective-C, which included 32 variations of video poker typically seen in bars and casinos.
    • Updated Dare to be Creative's Renamer4Mac macOS software to add extra features using Objective-C.
    Technologies: iOS, Swift, Objective-C, Xcode
  • Web Developer
    2006 - 2017
    Promotex, Inc
    • Updated Promotex.ca administration web portal to allow owner to upload daily inventory lists so customers have a better idea of when items are in stock and ready to ship.
    • Implemented a daily backup system for Promotex.ca's inventory database and ensured restoration worked flawlessly.
    • Maintained and supported Promotex.ca website.
    Technologies: PHP, MySQL
  • Software Engineer
    2015 - 2016
    Privoro LLC
    • Developed and maintained a privacy app in Objective-C, used to test the security of your RF and audio with and without the Privacy Guard in place.
    • Developed and maintained a demo iOS app in Objective-C to demonstrate how hackers could monitor your location, conversation, and take pictures using your iPhone without your awareness.
    • Developed and maintained a macOS application in Objective-C to download and display the information captured by the iPhone demo app.
    Technologies: iOS, Objective-C, iPhone
  • iOS Software Engineer
    2011 - 2016
    SCA (via Avenue Inc)
    • Developed and maintained Tork Snapshot—an in-house iPad sales tool that allowed salespeople to take a picture of a clients area and show various paper and soap dispensers in their correct orientation and size.
    • Developed and maintained Xpressnap Customizer—an in-house iPad sales tool that allowed a salesperson to display a Tork Xpressnap paper dispenser with a variety of backgrounds, colors, and options in 3D.
    • Developed and maintained Tork Cost In Use Calculator—an in-house iPad sales tool that translated a large excel spreadsheet into a user friendly iPad app that salespeople used to show the advantage of using Tork branded dispensers vs the competitors.
    • Developed and maintained Tork Advantage—an in-house iPad sales tool that allowed salespeople to sign up new customers on site, creating, printing, and emailing the official agreement forms.
    • Updated and maintained Xpressnap Stuffing Guide—an in-house iPad saleperson tool that enabled salespeople to report incidents of customers stuffing their Xpressnap dispensers with non-Xpressnap refills.
    • Developed and maintained Tork Insider—an in-house iPad salesperson app that allowed distributors to keep up to date with products, services, and events in the SCA corporation.
    • Developed and maintained Decision Tree—an in-house iPad app that helped a salesperson guide a customer to their appropriate dispenser with a series of questions.
    • Developed and maintained SCA Exchange—a customer-facing iPad app that allowed customers to read about the latest SCA news and share on their social media.
    • Developed and maintained a back-end administrative website that control the dispensers available to various distributors in Tork Snapshot and Decision Tree iPad apps.
    • Developed and maintained a back-end web service that controls the media available on the SCA Exchange and Tork Insider iPad apps.
    Technologies: Objective-C, iOS, Xcode
  • Mobile Software Engineer
    2014 - 2014
    Miracle Dent (via Sanity Consulting)
    • Updated a damage-tracking system iPhone app to allow scouts to find potential customers with dents in their cars to create new incidents.
    • Updated a damage-tracking system iPhone app to allow managers to view incidents and contact potential customers about the cost of repairs.
    • Updated a damage-tracking system iPhone app to allow customers to create new warranty registrations.
    Technologies: iOS, Xcode, Objective-C
  • Web Developer
    2013 - 2014
    Nichol Commercial Licensing (via Integrationworx)
    • Updated an intranet PHP web application to allow searches of all vehicles by serial numbers, unit numbers, and license numbers.
    • Added the ability to allow more flexibility in terms of filters and pagination in the reporting system for an intranet PHP web application.
    • Updated an intranet PHP web app to allow new transactions and associated fees on clients, companies, locations, and department levels.
    • Added a number of new features to an intranet PHP web application to make the manual entry of information more streamlined and less time-consuming.
    • Found and fixed a variety of bugs in the existing intranet PHP web app.
    Technologies: PHP, HTML, CSS, JavaScript, Kendo UI, Symfony
  • Mobile Software Engineer
    2013 - 2014
    Watershed Health (via Norima Consulting)
    • Updated an Objective-C iPad application to enable doctors and patients to communicate about potential cardiovascular health concerns and learn how to make changes to their lifestyle to avoid heart attacks.
    • Added an update an Objective-C iPad application to allow post-heart-surgery patients to keep their doctor informed about diet and exercise to ensure optimal recovery without the need to come to the hospital.
    • Updated an Objective-C iPad application to enable doctors and patients to maintain a lower level of feedback about ongoing diet and exercise to ensure that recurrent heart problems did not occur.
    Technologies: iOS, Objective-C, Xcode
  • Mobile Software Engineer
    2013 - 2013
    GoKart Labs
    • Developed an Android app written in Java for the Target corporate fall meeting team building exercise that uses ultrasonic audio to trigger animations and events in the app.
    • Helped complete an Objective-C iOS app for the Target corporate fall meeting team building exercise that uses ultrasonic audio to trigger animations and events in the app.
    • Developed an Objective-C iPhone app for fans of the the Minnesota Wild NHL team which is triggered by ultrasonic sounds played through the speakers at the games when the team scores in order to engage fans.
    Technologies: Android, Java, iOS, Objective-C
  • Mobile and Web Developer
    2011 - 2011
    Qliance (via Norima Consulting)
    • Developed a back-end for Qliance patient portal in MVC—allowing patients to report medicinal reactions and usage to doctors and to see their own history of reports.
    • Updated the back-end for Qliance patient web portal in MVC, which allows doctors to quickly get informed of patients current status and history.
    • Updated the back-end for Qliance patient web portal in MVC which allows doctors to correlate prescribed medications for trends in adverse reactions.
    Technologies: C#, ASP.NET, MVC
  • Software Engineer
    2009 - 2011
    Ceridian (via Norima Consulting)
    • Implemented a number of payroll enhancements to a VB6 payroll project with a large team and agile methodology.
    • Debugged, developed, maintained, and converted the above payroll project from US to Canadian standards.
    • Acted as the lead developer for Ceridian iPhone app, written in Objective-C, which allows client companies to securely manage their payrolls, and view past payroll history on their iPhone.
    Technologies: iPhone, Objective-C, Xcode, VB6
  • Mobile Software Engineer
    2010 - 2010
    Ready Credit (via Onshore.ca)
    • Added an ATM locator to the ReadyCARD iPhone app using Objective-C.
    • Added the ability to transfer money between ReadyCARD VISA prepaid credit card holders to ReadyCARD iPhone app using Objective-C.
    • Added an ability to transactions history retrieval to ReadyCARD iPhone app using Objective-C.
    Technologies: iOS, Objective-C, XCode
  • Software Engineer
    2008 - 2010
    Onshore.ca
    • Developed the back-end for a user-facing website that encouraged users to post pictures of their projects that used the new Glidden FreshAir paints using Java, Wicket, Spring, and Hibernate.
    • Developed the back-end for an administration portal for the Glidden FreshAir paints user site to moderate users posts and comments using Java, Wicket, Spring, and Hibernate.
    • Designed and developed data transport system between Java and C++ applications using Protobuf on a helicopter simulator for Mystic Coders.
    • Developed a promotional iPhone app for Orbitz gum's Dirty Mouth campaign using Objective-C.
    • Developed a promotional iPhone app called FrapApp which was a Starbucks promotion to encourage users to meet up at Starbucks for a drink using Objective-C.
    Technologies: Java, C++, Wicket, Spring, Hibernate, iOS, Objective-C
  • Web Developer
    2009 - 2009
    Librestream
    • Updated a WordPress site to allow the creation of partner company portals and be able to specify which site content is available in different company portals using PHP.
    • Updated a WordPress site to allow client companies to have multiple user logins that have the same access to that companies portal using PHP.
    • Updated a WordPress site to allow administrators to CRUD companies, users, and content to manage the customer company portals, users, and content using PHP.
    Technologies: PHP, WordPress
  • Software Engineer
    2007 - 2008
    Ice Futures Canada (via @IT)
    • Developed, maintained, and supported a variety of VB6, VB.NET, and SQL Server financial (futures markets) applications.
    • Developed and maintained an intranet web app using HTML, CSS, and VB.NET.
    • Mentored junior developers having problems with SQL Server and VB.NET.
    Technologies: VB.NET, Visual Basic 6 (VB6), SQL Server
  • Software Engineer and Support
    2006 - 2007
    Investors Group (via @IT)
    • Developed and maintained a variety of C++, C#, and VB6 client/server financial applications for Windows.
    • Worked on the web development and maintenance for intranet site using HTML, CSS, and VB.NET.
    • Supported the suites of client/server software which run on the consultants' workstations.
    Technologies: C++, C#/.NET, Oracle 9i, VB6, VBA
  • Software Engineer
    2003 - 2006
    Renolds Transport (via Wildcard Design)
    • Developed and maintained C#, VB6, and Access/VBA applications for their trucking management.
    • Developed Windows XP/2000 applications and tools using Access/VBA and VBScript.
    • Designed and developed a company website using PHP and MySQL.
    • Developed the communication software between Windows PCs and wash bay debit cards machines using VBA.
    Technologies: VPA, PHP, MySQL
  • Software Developer
    2000 - 2006
    QNX Software Systems Ltd
    • Completed port of Unreal Tournament to the QNX Operating System in C++.
    • Debugged and optimized a number of core Photon C libraries, resulting in a space savings of up to 50% on an embedded system.
    • Maintained QNX's legacy multimedia system written in C.
    • Assisted in troubleshooting QNX RTOS components on ARM, SH, MIPS, X86, and PPC processor boards.
    • Design and implemented QNX's multimedia architecture for their primary product, the QNX Neutrino RTOS. It is a highly efficient, heavily tested modular graph based multimedia system, written primarily in C.
    • Authored numerous design documents and technical articles for QNX's Marketing and Technical Publications departments.
    • Optimized core graphics rendering library used by Photon, the QNX GUI, written in C.
    • Ported WMA9 and various other codecs to the new QNX Multimedia framework, in C and C++.
    • Maintained and improved the QNX Multimedia framework written in C and C++.
    • Developed a DV multimedia decoder for QNX's multimedia framework from the spec written in C.
    Technologies: QNX, Photon, C
  • Software Engineer (Contractor)
    1998 - 2000
    Be, Inc (via Wildcard Design)
    • Ported a DV codec to the BeOS multimedia framework.
    • Trained software companies on the use and integration of their products with BeOS in the USA, Canada, and Europe.
    • Ported MPEG audio and video codecs to the BeOS multimedia framework.
    • Ported Cinepak video codec to the BeOS multimedia framework.
    • Helped to port the RealPlayer audio/video codec to the BeOS multimedia framework.
    Technologies: BeOS, C++
  • Software Engineer
    1995 - 2000
    Wildcard Design
    • Designed and implemented a number of cross platform tools and api's to make porting of games from Windows to BeOS, QNS RTP and Linux possible, written in C and C++.
    • Ported Abuse, Axia, Doom, Heretic, Hexen, and Eric's Ultimate Solitaire to BeOS, QNX RTP, and Linux using C and C++.
    • Ported Civilization: Call to Power, Worms: Armageddon, and Shogo MAD to BeOS using C++.
    • Designed and developed a TRS-80 Model III emulator for BeOS written in C.
    • Designed and developed a TRS-80 Model III emulator for AmigaDOS, and later ported to BeOS, Linux, and QNX RTP written in C.
    • Developed a HP scanner driver for BeOS using C.
    Technologies: AmigaDOS, BeOS, Linux, QNX RTP, C, C++
  • Software Engineer
    1997 - 1998
    Lorienne, Inc (later Beatware, Inc)
    • Worked as the project lead for BeOS image manipulation application, later renamed ePicture Pro for BeOS written in C++ using the BeOS API.
    • Helped debug and maintain Reggae—a word processor developed for BeOS in C++ using the BeOS API.
    • Helped debug and maintain Mail-It—a word processor developed for BeOS in C++ using the BeOS API.
    Technologies: BeOS, C++
  • Systems Analyst / Systems Admin
    1994 - 1997
    Environment Canada
    • Designed and developed weather-related analysis and retrieval software for use by weather forecasters and external customers.
    • Ported numerous weather forecasting applications from Fortran to C for use on HP9000 Unix workstations.
    • Developed a text-to-voice application for public weather services.
    • Maintained a network of more than 20 HP9000 Unix workstations and Windows computers.
    Technologies: fortran, C, unix
  • Software Engineer
    1995 - 1995
    Nova Design (via Wildcard Design)
    • Developed HP scanner drivers for the AmigaDOS application, ImageFX.
    • Developed 2 modules (a PNG loader and PNG saver) for the AmigaDOS application, ImageFX.
    Technologies: AmigaDOS, C

Experience

  • Mobile 3D Laser Scanner iOS App (Other amazing things)

    This is an app I wrote that allows you to record a video of an object on a rotating platform with a line laser pointed at it. The app will convert the captured video into a 3D model of the object.

  • Follow The Loot iOS App (Development)
    https://followtheloot.com/

    Follow The Loot lets you scan in the serial numbers from your bills—be they US dollars, Canadian dollars, Mexican Pesos, Brazilian Real, Chinese Yuan, Indian Rupee, or Euros!

    Once you've "looted" your bills, they show up on the map and you can see where they've been. When someone else "loots" your bills, the app updates and shows you the path its taken. Optionally, you can be notified if one of your bills has a bounty on it because of a unique or rare serial number pattern.

  • Magnetic Levitation Sculpture (Other amazing things)
    http://cadabralabs.com/blog/?p=44

    This is a small wooden sculpture that incorporates a strong magnet and a pair of Bismuth cones to levitate a smaller magnet. A small dial allows you to adjust the position of the small magnet.

  • The Magnetapult: A Magnetic Catapult (Other amazing things)
    https://www.kickstarter.com/projects/jfehr/magnetapult-the-magnetic-catapult-0

    This catapult derives its launching power from the repulsion of very strong neodymium rare earth magnets. The perfect size and performance for office wars!

Skills

  • Languages

    Swift 3, Objective-C, C, Swift, C#, PHP, C++, VB.NET, Java, JavaScript, Visual Basic 6 (VB6), Visual Basic for Applications (VBA)
  • Frameworks

    iOS SDK, Android SDK, ASP.NET
  • Libraries/APIs

    iOS API, Android API, jQuery, Protobuf, REST API, REST APIs
  • Tools

    Interface Builder, Xcode, Git, CVS, Sketch
  • Platforms

    iOS, Android, Linux, Windows
  • Storage

    MySQL, Microsoft SQL Server
  • Paradigms

    Augmented Reality

Education

  • Bachelor of Computer Science with honors in Computer Science
    1989 - 1993
    University of Manitoba - Manitoba, Canada
I really like this profile
Share it with others