Work history

 

1969      Reedley H.S. graduate.

 

Sept69-Apr72   U.S. Army

                : Spec5 (equivalent to a sergeant, E5).

                : Served most of the time in Okinawa doing repairs to equipment damaged in Viet Nam war.

 

May72-73   Professional tree trimming service with my 2 brothers in L.A. area.

1973-74   Mechanic at a forklift manufacturer in Selma.

 

1976       Reedley Community College, general education credits

1978       B.S.E.E., Electrical Engineering, Calif. State University at Fresno

·         * Hired by Fairchild Test Systems, they paid for relocation from Fresno to San Jose.

 

1978-1980   Software Engineer, Fairchild Test Systems.

Hardware self-diagnostics

: Taught myself Algol programming.

: Wrote diagnostics for VLSI semiconductor chip test systems (PDP11 and VAX). These were self-diagnostic tests for million-dollar chip testers. Power, Voltage, Amps, memory patterns, etc.

: Key hardware engineers left to form GenRad and asked me to come write self-diagnostic tests for their new test systems.

 

1981-1982   Software Engineer at startup, GenRad Test Systems.

Hardware self-diagnostics

: Wrote diagnostics for VLSI semiconductor chip test systems (VAX). These were self-diagnostic tests for million-dollar chip testers.

* Left to get into personal computers.

 

1982-1988   Software Engineer, Apple Computer, Inc.

                Hardware self-diagnostics for Lisa and Macintosh computers.

                Hardware diagnostics for computer peripherals.

                Worked with Sony to get 3.5 Floppy as standard in the Macintosh.

                Floppy disk duplication.

                First Macintosh Color computer prototype. Worked on QuickDraw, which was thought of as the ‘Crown Jewels’ of the core Macintosh code and was well protected. Written by amazing Bill Atkinson.     

: Taught myself Apples version of Pascal.

: Wrote self-diagnostics for the new Lisa computer and attached daisywheel printer.

: Moved to test engineering for the Macintosh. Sam Lyall manager.

: Taught myself C programming language.

: C - Designed a graphics kernel and mini-OS for an embedded system, a bed-of-nails board tester for 68000 Motherboards. Dennis Grimm designed the hardware.

: C - Drivers/diagnostics for floppy disk drives, SCSI drives, CDROMs, and tape backups.

: Trips to Japan to visit Sony’s floppy disk drive factory. One trip with John Moon.

: C - Diagnostics for fax modems using telephone noise test systems.

: C – Developed floppy disk copy protection for Apple and 3rd party disk copiers.

: C – Software for Sony’s robotic floppy disk duplication hardware used at Apple factory.

: Trips to Japan to visit Sony’s floppy diskette manufacturing plant.

: Converted some of QuickDraw, Apple’s graphic library, from B/W into Color for speed tests. This was for Jon Fitch’s new modular Macintosh.

* Moved to a smaller startup, Radius, still working on Macintosh projects. Radius was formed by and for Burrell Smith, the hardware designer for the first Macintosh.

 

1987-1994   Owner of my own part-time software business, IT Makers

Macintosh programming tool, and Civil War educational CD-ROM.

: Taught myself C and C++.

: Designed, developed, and sold my own programs for the Macintosh.

: Prototyper, later called Marksman, is a programmer’s tool for designing user interfaces and generating source code for C++, C, and Pascal.

: Designed, developed, and sold a Multimedia CDROM title for the Macintosh, titled “The Illustrated Civil War”. This has over 700 large grayscale images I scanned from a very old book as well as sound background.

Worked at home in my spare time.

 

1988-1990   Senior Engineer, Radius, Inc.

Video desktop playback and capture on Macintosh.

Macintosh Quickdraw acceleration board.

Computer monitor calibration.

: Pascal - Designed software to play video on the Macintosh, called Radius TV.

: C - Designed and wrote the firmware and drivers for the Video capture card.

: C - Developed a special effects graphics editing program that operated on captured video images.

: C – Wrote a monitor measurement and calibration application. PrecisionColor features, color temp and gamma correction, and did all the GUI.

: C – Wrote an (Apple Desktop Bus) ADB driver for controlling an external screen measurement device.

: Acorn - Coded the first QuickDraw graphics acceleration board for the Macintosh. This was an embedded system using the Acorn CPU on a NuBus card for speeding up graphics. Worked with contractor Andy Hertzfeld on this project.

 

Jan90-Jun90   Lead Programmer, C-Cube Microsystems

Still image compression, JPEG, both hardware and software.

: C - Specified the APIs for the JPEG Image Compression Workshop and all programming interfaces for C-Cube’s compression board.

: C – Wrote a simple driver to control the JPEG compression chip on this card.

: Lead/Manager - 4 programmers doing Windows and Macintosh SDK software. My manager was Jim Rafferty.

 

Jun90-Jan91   Parttime Contract Engineer, Vividus (while working daytime at another job)

Color painting portion of an animation desktop Macintosh program.

: C++ - Wrote the 32bit Paint portion of the Cinemation animation program.

* Short contract job to help the designer of an animation program.

 

Jul90-Jan91   Contract Engineer, MediaVision

MediaVision had PC sound expansion boards and wanted Macintosh ones also.

Hired by Jim Rafferty that I had worked for at C-Cube. Brought in Dennis Grimm that had done the board test hardware for Macintosh at Apple, he designed the hardware card for doing sound.

: Designed and developed all software for the 1st Mac sound board, ProAudio Spectrum.

: C - Boot code in ROM for this NuBus plugin card. Simple status and signatures.

: C – Designed and wrote the sound drivers, including MIDI support, for this board. That included both recording and playback for multiple channels, frequencies, and rates.

: C - Designed and wrote a simple Joystick driver.

: C – Designed and wrote a SCSI driver for supporting devices attached to this card.

: C++ - Created a sound playing and editing application for use with this board.

 

Jan91-Nov93   Contract Engineer, QuickTime, Apple Computer

QuickTime is Apple’s multimedia streaming framework. Created for video playback.

Hired by Eric Hoffert and approved by Bruce Leak. Worked with them and Mark Kruger, Sean Callahan, Jim Batson, and later Peter Hoddie.

: C++ - Developed MovieShop for optimizing layout of Video and Audio on CDROMs for QuickTime.

: C++ - Developed MovieAnalyzer to display movie data and look for playback problems.

: C - Wrote low level caching data handler for QuickTime optimized for reading from CD.

: C - Helped design and implement other areas of QuickTime with the core team.

 

Nov93-Mar95   Senior Games Engineer, Rocket Science Games

QuickTime group left to extend and use that technology in streaming video games.

Hired by Bruce Leak after he and Mark Kruger and Sean Callahan went to make video games at a company started by Peter Barrett (SuperMac founder).

: C++ - Developed a Game Compiler used to layout and optimize streaming video and audio for full motion branching video CDROM based games. 

: C++ - Developed a Game Validator that ‘played’ the game to verify data paths were valid.

: C - Wrote low level caching drivers to optimize reading from a 1X CD.  Games were for the PC, Sega, and 3DO game systems.

: C - Created a Macintosh based remote debugger for the embedded Sega game system. Worked on this with Tony Fadell (contractor).

Surprisingly Elon Musk was a summer intern that worked at Rocket Science Games on the Lode Star game. I did not know him at that time, he must have been in a separate group.

 

Mar95-Nov95   Lead Programmer, Claris Corp. (Apple Computer)

A senior manager had the idea to use the new OpenDoc technology and to move a version of their application there. Then it would be there if OpenDoc became widely used.

Hired to work on an unapproved, I was not told this when hired, project.

: C - Broke apart ClarisWorks, an integrated program suite, into separate OpenDoc parts.

: Lead/Manager - A group of 3 full-time people working on both Mac and PC versions.

* Left after marketing shutdown this rogue project.

 

Nov95-Nov96   Lead Programmer, Sony Electronics

Sony was entering the PC market and needed to make their system stand out.

: C++ - Designed and developed a graphical program launcher and MPEG movie player application that is used to showcase Sony’s first Windows95 PC computer, VAIO.

: C++ - Wrote a Windows95 screensaver for sequencing through images.

: Java - Did Java prototyping on new Internet TV product, channel selection and TV features.

: Lead/Manager - 2 contractors for the Internet product while still programming full-time. Worked with Sony Marketing, Sony QA, Intel Project management, ATI graphic engineers, and CompCore MPEG engineers to ship the system.

* Completed shipping Sony’s first desktop VAIO PC.  Left to work for Apple people I knew from before.

 

Nov96-Aug97   Senior Programmer, Power Computing, Inc.

Power Computing was the major Macintosh clone maker.

Hired by Jon Fitch, hardware engineer I worked with at Apple, to write diagnostics and manufacturing software for their Macintosh clones.

: C++ - Prototyped SDK test control software for Windows95 before work moved to Texas.

: Developed manufacturing control software and diagnostics for making Macintosh clone systems. Wrote numerous test suites to test new computers through the manufacturing process as well as load them with semi-custom software sets.

: Network data collection using AppleTalk and Open Transport, test station control software. Software to gather and correlate testing software from multiple test sites in the factory.

* Steve Jobs tried to kill Power Computing and when he failed then he got Apple to buy it and disband Power Computing.

 

Aug97-Apr98   Senior Programmer at startup, Magnifi, Inc.

Eric had a view of media far beyond just pictures and video.  He wanted a way to create libraries of media that were searchable and have thumbnail images describing each one.  He wanted to handle a growing number of formats for images and text.

Hired by Eric Hoffert, who had hired me before to work on QuickTime. He had left Apple and was the main designer of the Magnifi software.

: C++ - Designed and implemented a set of WindowsNT SDK C++ multi-tasking programs used for multimedia file analysis, auto-generation of preview images, sound clips, and extracting all text. Using GIF, MPEG, JPEG, QuickTime, DirectShow, NetShow, and Inso.

* This product turned into mainly a database application which was out of my area. Left because Eric needed to hire an experienced database engineer instead of me. The multimedia analysis portion was pretty much finished.

 

Apr98-Nov98   Contract Engineer at startup, TV Interactive.

“TV InteractiveTM Corporation has developed and patented a new kind of input device — called SmartPaper Remote, that allows electronic media to be browsed by touching text and graphics in printed publications. “

: MFC – Major enhancements and cleanup on an MFC SDI application that allowed graphical editing of hot-spot image areas for a HyperTouch book.  Added FTP support.

: MFC - Created an ‘engine’ MFC application that displayed Internet web pages, played MPEG movies, displayed JPEG and GIF images.  Program also used HTTP across the Internet. Used IE Explorer ActiveX and ActiveMovie OCX controls.

: C++ - Wrote NT Server 4.0 shell applications to automatically send email (POP3) and to parse a text file and put parsed data into the Microsoft SQL 6.5 database.

: ISAPI – Wrote a IIS 4.0 ISAPI extension, called using HTTP and talks to a SQL database.

: Web - Designed about 20 HTML and 10 ASP pages for forms entry, database connection, and auto-generation of HTML from a server-side ASP file.

* Worked there until the company lost funding.

 

Sep98-Dec98   Senior Software Engineer at startup, Media Guaranty

Media Guaranty is a Palo Alto, California-based Software (non-internet/mobile) company.

: Java Wrote Java multimedia related apps. Wrote Java app using JNI for processing image data, wrote multi-threaded ‘job’ engine to handle multiple media processing threads.

: C++ Wrote multi-threaded processing apps using QuickTime, Inso, and DirectShow.

* Worked there until the company lost funding.

 

Dec98-May99   Senior Software Engineer at startup, VSIS Inc. and startup eRemote.

VSIS Inc., a venture company backed by Mitsubishi Electronics America that was the focal point of the company's intellectual-property (IP) and chip-integration strategy in the United States.

Founded in 1996, VSIS (Sunnyvale, Calif.) set out to tap Silicon Valley's budding intellectual-property and design community, acting as a quasi-startup that was to develop its own IP or serve as a venue for scouting out promising technologies to acquire. The company was also a center for R&D and product development for system-on-chip (SoC) devices.

Hired by David Allport.

: Wrote an embedded Java application for a handheld consumer device with color LCD screen. Designed and wrote EPG (Electronic Program Guide for TV) area of the application.

: Wrote user customization program that processed EPG data for individual users. This application runs on Java under Windows NT.

: Java – Wrote a data parser and importer for EPG data. Uses FTP to get file, uses JDBC to import processed data into SQL Server database.

: Java – Wrote exporter and export picker programs for EPG for any area of the US.

: MFC/C++ - Wrote NT Server 4.0 shell applications to parse EPG text files and put parsed data via ODBC into the Microsoft SQL 6.5 database. Wrote program to extract data from SQL database for different time periods and areas of the USA.

: Web – Setup internal web IIS server and ASP pages for custom data displays. Created real-time access from ASP pages to ODBC database for EPG displays.

* VSIS Inc., company was owned by Mitsubishi and later Mitsubishi closed this USA group.

 

Jun99-Jun00   Senior Software Engineer, TiVo Inc.

TIVO had a patent associated with recording live video and then later playing it back. This prevented a great deal of competition from diluting the available market of users.

a device that records digitized video onto a hard disk”

Hired to do content creation tools.

Taught myself Borland application framework since the manager wanted me to use that.

: C++ - Designed and wrote an authoring program using Borland Builder framework. This app did Images, Sounds, Video clips, sends Email, talks to servers using HTTP, and uses FTP to send and receive files. App uses SQL across HTTP to query an EPG database (Electronic Program Guide, TV listings). App is used in daily production of TiVo Magazine.

: Java – Wrote programs to query database using HTTP and JDBC.

: C++ - Wrote NT Server 4.0 applications to do data mining of EPG data. Numerous programs search, categorize, and process Movies for automatic insertion into daily data. Invented a lot of methods of mining data as well as preprocessing data for quick searches.

: C++ - Wrote QuickTime movie processing app that captures video using a D1 capture card, it modifies the captured video in the CC (Closed Caption) area, then plays the video back out to a VTR.

: Web – Setup IIS and use ASP pages using ODBC for query of custom data in database.

 

Jun00-Oct00   Senior Software Engineer at startup, LinuxTV.com (parent company is ConnerTech)

“Audio/Video Recording System Enabled By Hard Disk Drive.” 

They were looking to do a TIVO-like product.

Hired because of my experience at TIVO. They wanted to do something similar.

: C++ - Designed and wrote PVR (Personal Video Recorder) application for a TV set top box. Original program designed and coded on the PC and then moved to VxWorks. Application handles English, Chinese, and Japanese text displays (single- & double-byte fonts).

: C++ - Wrote NT Server 4.0 applications to do data mining of EPG data. Numerous programs download, import, export, and data mine the EPG data.

: Web – Setup IIS and use ODBC for query of custom data in SQL Server 7.0 database.

* Worked there until the company lost funding.

 

Oct00-Feb01   Senior Software Engineer at startup, InnovisionTV (aka Innovision Labs)

: Have done evaluation of numerous Web platforms and products to use in an Internet TV.

: Designed numerous parts of the software, at both the application and server levels. The software is designed for an Internet-enabled TV.

* Worked there until the company lost funding.

 

Feb01- Jul01   Senior Software Engineer, Philips Semiconductor (SSG group)

: Took over PCI driver and support libraries for a custom DSP board, using Trimedia. Drivers worked on are WinNT, Win2000(WDM), and WinCE 3.0(DLL).

: Wrote WinCE/Trimedia applications (C & C++) for playing MP3 and Mpeg2.

: Developed Host PC (x86) to Trimedia (PCI card) communications for multimedia apps.

: Developed Trimedia TSSA components for read/write from host PC.

 

Jul01-May04    3+ year Contract Engineer, Joint Project with Advanced Micro Devices (AMD), National Semiconductor & Philips Semiconductors (SSG)

Trimedia is a family of External link opens in new tab or windowvery long instruction word External link opens in new tab or windowmedia processors from External link opens in new tab or windowNXP Semiconductors  (formerly External link opens in new tab or windowPhilips Semiconductors). Trimedia is a External link opens in new tab or windowHarvard architecture External link opens in new tab or windowCPU that features many External link opens in new tab or windowDSP and External link opens in new tab or windowSIMD External link opens in new tab or windowoperations to efficiently process audio and video data streams.

 

For Philips Semiconductors (SSG group):

: Created standalone version of WMA codec under IADK.

: RealNetworks project

: Ported RealNetworks player and codecs to standalone embedded Internet Radio platform.

: Developed Trimedia TSSA components for Real Networks player.

: Adapted RealNetworks’ Helix code to Trimedia.

: Wrote web page RealPlayer ActiveX control for WinCE 4.0 and Win32 using Trimedia. Reverse engineered existing PC control to match functionality.

: Wrote WinCE/Trimedia test applications (C & C++) for TmMan driver verification.

: Added multimedia capability for 3rd party WebPads using a Geode (x86) and Trimedia (DSP) running WinCE 3.0 & 4.0 and Linux.

 

For National Semiconductor: (NOTE: Some work is joint between National and Philips)

: Ported Microsoft WM8 player and codecs to standalone embedded Trimedia platform using multiple network stacks.

: Enhancements on PCI drivers and support libraries for a custom DSP board, using the Trimedia with TmMan libraries. Did some driver work on Linux, Win2000(WDM), and WinCE 3.0/4.0/4.1(DLL).

: Developed Host PC (x86) to Trimedia (PCI card) communications for multimedia apps. Designed and wrote Host/Trimedia communications and control for MP3, Mpeg1/2, Mpeg4, WMT, RealPlayer across PCI using messages and DMA.

: Developed remote media playback using RDP (Remote Desktop Protocol) and Virtual data channels.  Designed and got working for Win32 and WinCE with Trimedia DSP.

: Changed DShow filter to support RealNetworks. Added stream parser for stream identification.

 

For Advanced Micro Devices (AMD): 

(NOTE: National group, Geode, was bought by AMD. So, I am working with the same people. Some work is joint between AMD and Philips)

: Ported Trimedia application and codecs from IADK2.0 framework to MPTK 1.0 (pnx1500)

: Ported Microsoft WM9 player and codecs to standalone embedded Trimedia platform using multiple network stacks.

: Created host player and libraries for Trimedia hosted application configuration and playback.

: Creation, tuning and rewrite of Trimedia DSP applications that control codecs and renderers. Adding support for dynamic reconnection.

: Ported Trimedia application and codecs from SDE2.1(pnx1300) to IADK2.0 (pnx1300)

: Helped port WDM 1500 driver to WinCE on Geode (low power x86 from AMD).

 

Jul03–Apr04   Part time Contract Engineer, Arcadyan

: Added DIVX and WMA support to application and playback engine.

: Optimized playback for Mpeg streams, application-level tuning.

: Designed and implemented method for playing PAL clips on NTSC and the other way around.

: Reconfigured connection software to use faster video scaler component.

 

May04-Aug05   Contract Engineer at startup, DualCor Technologies

Bryan Cupps was the main designer of phone with 2 processors, one for phone features and one to run Windows XP applications on the phone.

2006 “DualCor Technologies, Inc., today at the Consumer Electronics Show (CES), previewed the DualCor cPC, the world's first ultra portable personal computer to simultaneously run full-function Microsoft Windows XP Tablet PC Edition 2005 and Windows Mobile 5.0 operating systems. “

: Wrote Phone application to run under WinCE, using Wavecom phone module.  Dials, answers, displays contacts, calls, multiple skins, etc.  Launches other WinCE applications.

: Wrote WinCE to WinXP communications and custom control code for Phone/PDA.

: Managed Platform Builder for WinCE hardware image.

: Designed and wrote WinCE Contacts application, WinCE Tasks application, and WinCE Calendar application, all patterned after PocketPC ones.

: Designed and wrote WinCE Notes application, for quick drawn note taking.

: Designed and wrote sync software between WinCE POOM and WinXP OOM, Outlook Object Model. For contacts, tasks, appointments, and email.

: Wrote ‘soft keyboard’ apps for both WinCE and WinXP.

: Wrote custom ‘app bar’ for WinXP.

* Left when DualCor moved to Scotts Valley, too far for me to commute daily.

 

Aug05-Nov05   Owner of my own part-time software business, BitSlinger

: Designed and wrote a developer tool for using Software Patterns. Wrote sample pattern code for 23 patterns in C++, C#, and J#.

 

Nov05-Mar06   Contract Engineer, Philips Semiconductors (w/same people from AMD project) (SSG) for a short 4-month contract

: C++ - Designed and developed WinXP Server and Client applications for video streaming, using TCP/IP and UDP (WinSock2).

: C++ - Wrote DShow source filter that talks TCP/IP and UDP to external set-top box for streaming video. Runs in memFile and netFile modes, for playing from a local file and playing from a network connection.

: C - Designed and developed embedded modules, input and output, used for streaming in and out video files from an embedded PSOS device. These used TCP/IP and UDP (Blunk) and talk to the PC programs above over ethernet.

 

2006   Senior Software Engineer, Marvell

Blu-ray DVD player.

Marvell had a group with mostly Chinese engineers and recruited American engineers from Philips project to help their Chinese engineers get up to speed. I went to help.

* Group meetings were held in Chinese and later explained to me.  Not a place I could work.

 

2006   Startup Contract-to-hire Engineer, Metta Technology

Asked to come there by some engineers I had worked with at National Semiconductor on Trimedia.

: C++ - Designed and wrote multiplatform/multithreaded media framework for use in DVD playback for SD, HD, and BD (Blu-ray) formats.  Plays Mpeg, H264, VC1, AC3, etc. formats.

: C++ - Designed and was in process of writing combination PS(Program Stream) and TS(Transport stream) demux. Was playing some program and some transport streams at the time I stopped.

: C++ - Wrote an analysis and display application for DVD xxx.IFO files.  Decodes and displays all data structures and their linkages to other files and data.

: SDK – Designed and wrote C++ framework for DVD playback for SD, HD, and Blu-ray formats. Plays Mpeg, H264, VC1, AC3, etc. Also designed and wrote combination PS and TS demux.

* Worked there until the company lost funding.

 

2006   Senior Software Engineer, Red Prime Technologies

Security video client and server. Surveillance Technology.

 

Nov06-Jun07 Contract Engineer at startup, Brightscale.  

“Themis is a family of programmable video post-processing solutions targeted @ LCD Panel manufacturers.  Key differentiating product features are FRC and LED Backlight management.  Initial kick off comprises of multichip solutions on a small form factor PCB or MCC module.  Ultimate solution is an integrated single chip solution.”

LED TV control plus.

: App – Designed and wrote Win32 C++ multimedia application to simulate HW, plays video and audio using cross platform OSAL and HAL layers.

: SDK - Designed and wrote embedded C++ multiplatform/multithreaded media framework for use in an HDTV SOC(Silicon on a Chip) using 4 MIPS processors. Wrote graphics library as well as using open-source TrueType font renderer (freeType). Added open-source MPEG, AC3, and H.264 decoders.

: Win32 C++ application to simulate HW, plays video and audio using cross platform OSAL and HAL(Hardware abstraction Layer) layers. Wrote custom video renderer and hooked to WaveOut audio.

: Designed and wrote multiplatform/multithreaded media framework for use in an HDTV SOC using 4 MIPS processors.

: Added features and testing while waiting for the chip to become functional.  Wrote graphics library as well as using open-source TrueType font renderer for doing CC (Closed Caption) and Setup screens on an OSD. Added H.264 and VC1 video support.

* Startup decreased staff while chip was out being made, people asked to come back later.

 

2007   BlackMagic Design

·         Hired to be the start of a new Engineering group in the US.

·         Got no support or needed sources to start work.

·         * Left after management refused to give me documents, answers to questions, or sources needed to start work.

 

Jul07-Feb08   Senior Software Engineer, Portrait Displays.

Asked to come in by a friend after all application engineers had left, to keep releases shipping. So learned a large code base fast and started doing ‘firefighting’ releases and fixes immediately.

: Win32 C++ application and a MFC app with IE(Internet Explorer) as GUI, COM objects, DLLs, etc.

: Took over main shipping applications.  Came in after engineers had left, so learned large code base fast.  Started doing ‘firefighting’ releases and fixes immediately.

: Major work cleaning up old code.  Working towards as little required maintenance as possible.

 

2008-2009   Principal Software Engineer at startup, Brightscale

·         Returned when chip was ready for integration and testing.

: C++ - Designed and wrote multiplatform/multithreaded media framework for use in an HDTV SOC using 4 MIPS processors.  First platform up was x86 using open source Mpeg2 and AC3 codecs with my custom video and audio rendering written to simulate hardware structure.

: C++ - Added features and testing while waiting for the chip to become functional.  Wrote mini-graphics library as well as using open-source TrueType font renderer for doing CC (Closed Caption) and Setup screens on an OSD. Added H.264 and VC1 video support.

: C++ - Built as monolith application, also as 5 separate application using shared memory, and under Cygwin to get ready to move to the chip.

: Win32 C++ application to simulate HW, plays video and audio using cross platform OSAL and HAL layers. Wrote custom video renderer and hooked to WaveOut audio.

: Multiplatform/multithreaded media framework for use in an HDTV SOC using 4 MIPS processors and custom hardware. Got all 4 processors working as far as chip problems allowed using RTEMS and GreenHills compiler and JTAG probe.

: Got HW tuner, HW PID filter, SW Section filters, SW Transport demux all working.

: Integrated OceanBlue TV (DVB) stack onto the multimedia playback framework.

: Wrote minimal ATSC stack and moved on top of framework.

* Worked there until the company lost funding.

 

2009   On my own- while looking for a job, BitSlinger         

Did some work on sharpening Linux C++ skills and writing a phone sample application. Writing new C#/WPF real-time Stock trend analysis and charting application for personal use.

 

2009-2010   Senior Software Engineer, Cisco

“The Cisco IP Interoperability and Collaboration System (hereafter referred to as Cisco IPICS) provides voice interoperability among disparate systems. It offers an IP standards-based solution that interconnects voice channels, talk groups, and virtual talk groups, and that provides powerful and flexible management of personnel and media resources.”

“The Flip Video cameras was an American series of External link opens in new tab or windowpocket video cameras for External link opens in new tab or windowdigital video created by Pure Digital Technologies,External link opens in new tab or window[1] a company bought by External link opens in new tab or windowCisco Systems in March 2009;External link opens in new tab or window[2] variants include the UltraHD,External link opens in new tab or window[3] the MinoHD,External link opens in new tab or window[4] and the SlideHD.External link opens in new tab or window[5] Flip Video cameras were known for their simple interface with few buttons, minimal menus and built in USB plugs (from which they derived the flip name), and were marketed as making video "simple to shoot, simple to share"External link opens in new tab or window[6]

: App – (fulltime) Worked on FlipVideo camera firmware, using C and ThreadX on MIPs. Some work on video thumbnails, internationalization, OSAL, and logging system.

: App – (contract) Worked on a Windows C# WPF .NET 3.5 desktop application for the IPICS project. This allowed for connection between different Fire/Police/Hospital systems. Each usually has their own special phones/walkie-talkies.

: Focus was GUI redesign to solve problems of performance, unnecessary complexity, no standards, and adding skins. Extensive work using WPF and C#.

 

2010-2015   Senior Software Engineer, VTS Medical, bought by Steris.

: App – Designed and implemented medical operating room control software using C#/WPF.

: Controlling monitors, lights, music, video capture, and a lot more. Using Windows embedded with .NET 3.5/4.0 for controlling internal boards as well as external devices from this GUI friendly internationalized application.

: Used WCF and SOAP commands for server access as well as FTP of images and video. Used DirectX (DShow calls) for Video capture (H.264) and playback used by the Video Capture feature of the application.

: XP Embedded shell program for access to system functions.

: External test program, using WPF automation, for burning in the app and hardware.

: Video conferencing for clients and server, used room to room and room to remote across the Internet.

:Experimenting with Kinect and hand gestures for doctor manipulation of x-rays, etc. Doing demo and feasibility.

Worked for John Thomas