Technical Achievements and  Experience

James R. Bergsten

8 Brightwood Way

Danville, CA 94506-1915

(925) 838-4615
Fax (925) 743-0867
 
jim@thebergstens.com
 http://www.thebergstens.com/resume

 

With more than thirty years experience in computing, I have developed many successful, high-quality, low-maintenance, easy-to-use hardware and software products.  Have architected, designed, developed, debugged, tested, and documented six award-winning software products, and two hardware/firmware products.  Many of these are presently in productive use worldwide -- some have been running “bug-free” for over twenty years.

Have personally developed three proprietary operating systems, two real-time storage array and virtualization systems, disaster recovery and business continuation applications, financial applications, database applications, application and systems development and debugging tools, and graphical display systems.

Have written well over half a million lines of debugged production code, and several thousand pages of technical documentation.  Have twelve sole-inventor “crown jewel” Patents Issued, and four Patents Pending.


Product Development Experience

Operating System Development

Architected and developed a platform-independent real-time operating system, supporting n-way multiprocessing and multitasking, scheduling and dispatching, memory allocation and management, device virtualization, rudimentary file system, system initialization and shutdown, device discovery, security, encryption, resource locking, semaphores, system debugging and console command processing.

Developed an entire multi-homed TCP/IP stack from scratch.  Developed servers for Telnet, FTP, HTTP, SNMP, and multiple vendor-specific protocols.

Architected and developed a complete fault-tolerant, multipathing I/O subsystem. 

Developed device drivers for initiator and target mode SCSI and Fibre Channel, iSCSI, ATA, SATA and SAS, serial and parallel ports, disk, tape, CD/DVD, flash memory, EEPROM, NVSRAM, UPS, timer, real-time clock, keyboard, USB, Ethernet/Gigabit, and simple graphics.  Developed extensive software for device exercising and testing, bring-up, compliance, data-integrity-verification, fault-isolation, diagnostics, and performance analysis and reporting.


Storage Array Subsystem Development

Architected and developed an interface-agnostic, SCSI-compatible storage product with support for disks, tapes and CD/DVD, device simulation, caching, device virtualization, zoning, transparent local and remote device access, n-way local, remote, and cascaded mirroring and snapshot, no single point of failure, n+1 failover/fallback, multiple active coherent cache, data error detection and recovery, customizable performance and tuning, configuration, extensive reporting, and support for user, operator, administrator, and maintenance console commands.

Started porting of this application to Linux and/or BSD.

Developed SATA and iSCSI drivers for LSI Logic storage arrays.  Took over development, debugging, and documentation for defunct storage array supplier.


Application Development

Designed, managed, and/or developed six successful products for the IBM mainframe environment including: XMENU, a multiple-award winning windowing tool for mainframe terminals (pioneered what-you-see-is-what-you-get screen layout editing, and symbolic-field-naming), KPROBE, a post-mortem operating system debugging tool, XDEBUG, an interactive application and system debugging tool, SQLEXEC and SQLMENU – interactive SQL development tools, and KDES, a file encryption tool.  Also developed program product distribution and maintenance tools.

Co-developed a pharmaceutical tracking system using radio frequency identification (RFID) technology, web programming, and SQL databases.  Developed a financial application for testing, simulating, and validating equities trading and portfolio management.  Developed tools for product development, test, and installation.

Platform Experience

Personal Computers and Servers

Microsoft Windows-- all variants -- product design and development, modifications, device drivers, installation, performance and tuning, maintenance, testing, operation, experience with virtually all popular software products.  Subscribe to MSDN.  Maintain multiple personal XP and Server systems, including SQL, web servers, email servers, communications servers, and application servers.

Linux -- all variants -- product design and development, installation, testing, performance and tuning, operation, device drivers.  Maintain multiple personal Redhat and SuSE Linux systems.

UNIX/BSD -- product design and development, installation, performance and tuning, operation, administration.  Maintain multiple personal FreeBSD, NetBSD, OpenBSD, and Solaris systems.

Mainframes

VM -- all variants -- product design and development, modifications, installation, performance and tuning, testing, operation, experience with virtually all program products

MVS -- all variants -- product design and development, installation, testing, performance and tuning, operation, experience with most popular program products

SQL databases -- product design and development, installation, performance tuning, operation, administration

Storage management -- product design and development, performance tuning, operation, administration

MIS management -- hardware and software procurement, installation, operation management, maintenance, physical planning, and disaster recovery – managed multiple enterprise computer centers.

Minicomputers, Workstations

Intel x86 -- product design and development, hardware and software acquisition and installation, performance and tuning, BIOS development, own Pentium development and test systems, with personal copies of over fifty software development, application, and tool products, Windows SDK and DDK,  Windows XP/Vista SDK, DDK, and HAL..

Power PC -- NT, AIX -- firmware/diagnostics/system bring up.  Windows NT SDK, DDK, and HAL

Novell NetWare, Windows, Linux, BSD, Solaris -- network setup and administration

Experience with UNIX systems dating back to first UNIX version shipped outside Bell Labs to AUX/Solaris/UTS/Linux


Languages

C, C++, Microsoft Visual C++, Intel, Gnu -- product design and development

REXX -- product design and development

FORTRAN                                                

Turbo Pascal and Pascal/VS

Minor experience with many other languages

Many assembler languages

Many microcoding languages – developed proprietary microcode compiler

Several prototyping/object oriented languages (Actor, Smalltalk V)

Documentation, Web Design, Multimedia, Image, and Graphics

Microsoft Word and PowerPoint, Word Perfect, Adobe Acrobat, Framemaker, and Pagemaker

Adobe Photoshop, Illustrator, and Premiere, Corel Graphics Suite, Microsoft Visio

IBM DCF, GML, BookMaster including macro development

Hardware, Device Drivers, Vendors, and Standards

Parallel SCSI (LSI), Fibre Channel (QLogic, Emulex, LSI), iSCSI (QLogic, Intel, others), SAS (LSI), PCI, PCI-x, PCI Express, Infiniband, IDE/ATA/SATA (Intel, Marvell, Promise, Broadcom), Ethernet/GigE (Intel, Broadcom), ISA/EISA., BIOS, ACPI

ATA/SATA, SCSI, FC, SAS drives (Seagate, Maxtor, Western Digital, Hitachi, others), various CD/DVD and tape drives

Extensive IBM mainframe experience -- diagnostic development, test cases, advanced function design and specification, ESCON, channel programming including virtually all peripherals

x86, Power PC, X-scale, MIPS -- systems architecture (embedded Linux, RedBoot, OpenBoot, grub) – various chipsets (Intel, Broadcom, Marvell)

Miscellaneous

Spreadsheet -- Excel

General Accounting -- Peachtree

Project and Development Management -- Microsoft Project, Track, Delta, SourceSafe

Contact Management - ACT

Communications -- Procomm, PC Anywhere, Carbon Copy, LapLink

Large complement of development and debugging tools

Music Studio

Large complement of music, electronic, and digital recording and mixing equipment

Digidesign Pro Tools HD system

Sony Acid, Vegas, Sound Forge

Tascam Gigastudio, Cakewalk Sonar

Many custom applications, large complement of samples