Resume Kevinpackard 2
Total Page:16
File Type:pdf, Size:1020Kb
Kevin Packard, Software Engineering 7/25/19 101 Outpost Cv Cedar Park, TX 78613 mobile: (603) 440-8757 [email protected] Portfolio: http://blackfrog.com LinkedIn: https://www.linkedin.com/in/kevin-packard-2930b21/ GitHub: https://github.com/kpackard Profile: Experienced Software Engineer providing design leadership and development experience needed to suc- cessfully ship products. Specializing in iOS, macOS, Linux, Embedded Linux, AWS Serverless, and Communications. Skills iOS / macOS: Swift, Objective-C, App Kit, UI Kit, some Watch Kit, Core Animation, Core Graphics, Core Image, GameKit, some Metal, CloudKit, Core Data, Core Motion, MessageUI, StoreKit, Push Notifications, AVFoundation, Core Audio, Core Video, XCTest, GCD (libDispatch). Linux / Embedded Linux: C++, Qt, POSIX Threads, thread synchronization, sockets (UDP, TCP, SSL/TLS), mySQL. Amazon Web Services (AWS): Cognito, S3, CloudFront, SNS, API Gateway, Lambda (Python), DynamoDB, AWS Mobile SDK, AWS Amplify Framework. Operating Systems: iOS, macOS, Linux, AWS, Symbian S60. Some experience with Windows and Android. Have developed projects with a shared code base across multiple operating system targets, including Linux/Windows, Mac/ Windows, and iOS/Android. Graphics & Image Processing: Invented and implemented a real-time image compression algorithm for a Video Conferencing system using digital telephone lines (ISDN and Switch-56), analog telephone lines, and IP as transport medium. Experience with image filters, dithering, compression, and other aspects of image processing. Dabbled with OpenGL and Metal. Experience with related iOS / macOS technologies: Core Image, Core Video. Experience with Intel’s Integrated Performance Principals (IPP) library. Communications, VoIP, Conferencing, and Streaming: SIP, SDP, H.323, H.320, H.239, RTP, SRTP, En- crypted RTP, RTCP, ICE, STUN, TURN, RTSP, ISDN. Experience with realtime audio & video communications sub- systems. Open Source: AlamoFire, WebRTC, PJSip, Asterisk, oSIP, Reciprocate, OpenH323, VOVIDA SIP stack, PWLib, ptypes, ACE, Darwin RTSP Streaming Server, Qt, Intel IPP, MPFR on GMP. My own open source projects are PComm and Telecine Film Transfer. Drivers: Implemented macOS PCI driver for an image capture card. Implemented several classic Mac drivers. Web: REST, JSON, SOAP, XML, HTTP, HTTPS, some HTML, some CSS, Apache, Perl, some PHP, some Python. Networking Architecture: designed and implemented two large, scalable communications systems (one for fax- over-IP for Dialout.net, and one for audio/video/data communications for HCR), with authentication, authorization, encryption, and scaling. Implemented a turn-based game engine for online gaming using Game Center and AWS Serverless; it scales very large and costs very little to operate, making it ideal for a freemium game. !1 Resume - Kevin Packard - 101 Outpost Cv - Cedar Park TX 78613 - 603.440.8757 - [email protected] Experience blackfrog software, 1998 - present Owner Opposition - an analytical game of skill and deception, for the iPhone and iPad. Invented as a board game in the 1970’s by Bob Packard, a high school math teacher from Alaska. Bob is my father. He made game boards out of mahogany in his wood shop, then he’d take my brother & me to school where we’d play against his students. I brought the game to the iPad and iPhone. Now in the App Store ImageXpert, Jan 2001 to Feb 5, 2002; Fall 2002; Jan-Mar 2005; Jan-Mar 2006; Jan 2014 - present Consultant ImageAnalyst - an automated machine vision system providing image quality measurement and analysis, for macOS. Intermittently since 2001, I’ve added features and migrated this macOS app to new Apple technolo- gies. Added threading and GPU support to improve performance. Implemented a macOS driver for a PCI image capture card. Added support for TWAIN scanners. Ported to Carbon API's, then to intel processors on macOS, then again to Cocoa and 64-bits. Added dynamic plugin architecture for third party development. http://imagexpert.com TapTapTap, Oct 2008 to Sep 2009; Jan 2013 to Oct 2018 iOS Consultant Crossbang! - a multiplayer crossword game for iPhone and iPad. Designed by tap tap tap, the software was developed by myself. Development includes complex UI animations, and a very low-cost back-end using Apple’s Game Center and Amazon Web Services (Cognito, S3, CloudFront, SNS). Demo available upon request. Convert - a Unit Converter and complete Scientific Calculator for the iPhone. Designed by tap tap tap, the software was developed by myself. Uses a 256-bit precision floating-point engine to achieve the high degree of accuracy required for extreme conversions such as parsecs to angstroms. Version 1 released in 2009, and reached #2 in the App Store. Version 2 released in October, 2013. Convert is no longer in the App Store. http://taptaptap.com ShoreTel, June 2009 to Dec 2013 Staff Software Engineer, Architect 480 and 420 IP Desk Phone Families - a series of embedded Linux desk phones, developed in-house by ShoreTel. Was the first engineer hired for the newly created Phone Software team. Evaluated SOC’s, se- lected embedded graphics framework, and architected a single, reusable code base from which the 485g, 480g, 480, and 420 desk phones are built. Participated in Agile process (Kanban, scrum, estimations, etc.). ShoreTel has since been purchased by Mitel. ShoreTel Mobility - a soft phone for iPhone, iPad and Android, interfacing with ShoreTel’s desktop phone system. Overhauled the ShoreTel mobility app for usability. Worked with an outside design group to produce a brand new user interface for ShoreTel Mobility 7, for iOS and Android. ShoreTel has since been purchased by Mitel. RADVISION, Ltd., Mar 2006 to May 2007; June 2008 to June 2009 macOS / Windows / Linux Consultant Scopia Desktop - a desktop video conferencing solution. Developed conferencing client for macOS using my own PComm framework, now open sourced. Radvision has since been acquired by Avaya. Click To Meet - an ancestor of the desktop video conferencing solution Scopia Desktop. Implemented QuickTime plugins for macOS and Windows to decode H.239 content video, using Intel’s IPP libraries. Added encryption (SRTP & Encrypted RTP) to Windows client and Windows/Linux server. !2 Resume - Kevin Packard - 101 Outpost Cv - Cedar Park TX 78613 - 603.440.8757 - [email protected] Aweli, Inc. iOS Consultant adgrinder - a video advertisement creation, placement, and verification service. Developed a native iPhone application that interfaces with Aweli Inc.’s adgrinder REST service. Developed back end process that dy- namically constructs an MPEG-4 movie from a movie template, using still images and text gathered on the iPhone. The Real School of Music macOS Consultant Scheduling Kiosk - interactive kiosk software running on macOS. Displays live scheduling data, inter- spersed with promotional videos, displayed on flat screen televisions throughout the Real School facility, for macOS. Developed a Quartz composition to artfully display scheduling data, interspersed with client-con- trolled movies. Scheduling data is pulled from a TimeTrade server using SOAP/XML. https://www.therealschoolofmusic.com Aylus Networks, Inc. Symbian S60 Software Engineer MediaShare - a family of products that enable a new class of real-time multimedia services for mobile oper- ators. Tuned and standardized RTP stack, debugged and performed general maintenance of Symbian S60 IMS Video Share client. Extended open source project pjsip to signal and transmit H.263 video. sentitO Networks Software Engineer Carrier Asterisk - a web app for VoIP carriers to manage subscriber provisioning and push configurations to a farm of Asterisk boxes and sentitO VoIP gateways. Developed frontend, backend, and mySQL database. Health Communications Research Consortium Consultant, Chief Architect, Network Services Coherent Informatics - a technology platform for secure, real time audio/video conferencing and collabora- tion. Architected SIP signaling for authentication, location, and load-balancing services. Implemented por- table SIP (RFC 2543), BEEP (RFC 3080), and RTP (RFC 1889, 1890) stacks targeting Windows, Linux, and macOS. Implemented real-time audio/video QuickTime library for macOS. Dialout.net Consultant, Architect SccIP - a service for routing data and fax calls on the internet. SccIP uses SIP call signaling over TLS. Archi- tected a SIP signaling network for provisioning, authentication, location, billing, and load-balancing services. Implemented SIP stack targeting any 32-bit Windows kernel (client), and Linux (server). TeraGlobal Communications Corp Consultant TeraMedia - a collaboration service providing secure Audio, Video and Data communications across a pri- vate, reliable network. Implemented a realtime RTP subsystem for voice and video over IP, using secondary interrupts, on Mac OS 9. White Pine Software, now RADVISION, Ltd. Consultant CU-SeeMe - a multipoint video conferencing system for IP networks. Originally developed at Cornell Uni- versity, then acquired by White Pine Software. Redesigned and optimized QuickTime-based video and au- !3 Resume - Kevin Packard - 101 Outpost Cv - Cedar Park TX 78613 - 603.440.8757 - [email protected] dio subsystems for macOS. Architected and implemented C++ object framework for core engine. Architected flow between audio, video, and network subsystems, then profiled, and optimized. Implemented Motion-JPEG QuickTime codec from open source library. Assisted Apple debugging their H.263 QuickTime codec. Assisted third party video camera manufacturers