Robert Warren

Logo

Software Developer

Colorado Springs, CO

wheatbridge@gmail.com
R Warren
http://wheatbridge.com/wordP/resume-site/resume/
Work Locations: Western States, Colorado, Texas, San Francisco

Colorado Springs, CO

Software Developer WHEATBRIDGE Colorado Springs, CO
May 2011 to Present
1. NodeJS, Express JS, Responsive Apps. Currently working on a series of 3 NodeJS apps.

2. 802.11 Detection & IoT Integration: Cell phone/Bluetooth detection for traffic transit time calculation, municipality traffic congestion matrix sampling, crowd mapping. Originated the detection component (back end), middleware, and UI/UX. (Responsive: cell to desktop). Original LAMP + WordPress version, also Node.js + Mongo (MEAN) version.

3. Angular JS/React Fixup. Code fixup, bug repairs, feature additions and testing of a Angular JS/React/Grails/JVM website.

4. EXT-JS, DHTMLX front end, HTML5 server-side events, PHP middleware, and PostgreSQL backend for wireless (Zigbee, Xbee) magnetic detection devices. System designed from the ground up as an HTML-5 app with multi-threading, server-side events, touch-screen, and other HTML-5 and javascript enhancements. The project initially consisted of a design phase in which over 40 web servers and 15 databases were evaluated. A data model was constructed based on NTCIP and NEMA standards and MIB files and transformed into a standards compliant RESTful model that fit national FHWA and AASHTO standards. The evaluation also included a survey of all available competitive devices and the development of a criteria list that would ensure the GUI’s scope, sequence and data visualization would exceed all current existing systems.

Software Developer & Multimedia Producer TRAFFIC OPERATIONS CENTER Colorado Springs, CO
August 1998 to April 2011
Worked in concert with IT department, professional engineering (PE) staff, software developers, vendors, network engineering staff, and traffic engineers at Colorado Department of Transportation and City of Colorado Springs operations centers in the development of software for traffic operations in El Paso county and other locations throughout Colorado. Project funding was through US Dept. of Transportation. Note: Most all of the modules/software listed below operated as stand-alone programs, a windows service, in some instances also as a web service, and as modules integrated into a system-wide user interface. Module interfaces were through synchronous and asynchronous (multi-threaded) protocols: HTTP, DCOM, TCP/IP, UDP, serial, WMI (Windows Management Interface), ASCII, SNMP, socket servers, event-manager message interception, .NET components, WIN32 message interception, database triggers, shell commands, WIN32 APIs, mutex interception, process injection and various other methodologies.

2010 €” 2011
H.264 Video Virtual Matrix Switcher & Transcoder Software. This multi-monitor and video wall desktop app supports numerous video windows that capture H.264 and other types of video surveillance streams; it records multiple streams from multiple threads to multiple files on multiple discs while avoiding head contention issues. The program captures individual frames and contains algorithms for motion detection and object counts: for example, it can count pedestrians on the street or cars on the road as well as recognizing types of objects. [C#, VB, MS-SQL, transact SQL, vLan, MPEG, H.264, H263, multicast, unicast, point-to-point, Internet Group Management Protocols (IGMP)]

Camera PTZ & FOV Controller/Virtual IP Controller Software. A corollary of the system above, this software module controls dome camera movements, adjusting camera positions via joystick or cross-hairs on video monitors. It controls camera swivel in 1-degree increments, pan, tilt, zoom, focus, color, wipers, tracking, field-of-view calculations, and so-on. [C#, VB, SNMP, STX/ETX, i5110, Panasonic, Pelco, Canon, network packet sniffing, TCP/IP, hex packets, binaries, MIB]

Origin & Edge Media Streamer Network. Set up and tested a WOWZA origin and edge media server expandable for 200+ cameras. Origin server ‘A’ was on a subnet, followed by a firewall, with an edge server that delivered media to load-balancing servers and from there distributed to the public. [WOWZA, Flash, ECMA-262, supplemental vLan transcoding using VLC, Windows 2008 servers, HTML]

SNMP Controller. This VB.NET application is for iVolution 1000 and for setup of IGMP on Extreme Networks Summit switches. This is a simple module for setting MIB values via SNMP. [C#, VB.NET, SNMP, loading & parsing MIB files into XML files, assembling subsequent XML files into application configuration files, TCP/IP, UDP, IGMP on Summit Switches]

Dijkstra and A-Star Path-finding Algorithm Implementation. This C# & VB.Net module performs A-Star path-finding for devices using Telnet communication. [C#, VB.NET] Web-based User Interface. Built for management of roadway cameras, this software connects to the camera PTZ software controls mentioned above via transaction stacking on SQL 2008 and triggers. . [ASP, MVC, ASP.NET, HTML, CSS, Javascript, Model-View-Controller, C#]

2008 €” 2010
Network Poller & Database. This multi-threaded network poller searches a network with multiple subnets asynchronously for hundreds of IP devices, collects and identifies MAC addresses, correlates MAC addresses with manufacturer tables in MS SQL database, searches port addresses to attempt to identify types of hardware, sends STX/ETX, ASCII, and binary commands to ports to confirm hardware type, measures network latency, if it identifies the object as an ethernet-to-serial it attempts a search of multidrop (HDLC) addresses, attempts to communicate with and identify type/kind of device. After building a database image of the network and its subnets, it compares the current topography with historical topography and alerts users to any changes and creates a plug-and-play scenario for new devices connected to or dropped from the network. The program correlates types of devices found with configuration options (Telnet, SNMP, HTTP) and then tests and creates connection links to configuration protocols/interfaces. [VB.NET, SNMP, HTTP, Telnet-ASCII, TCP/IP ]

Time-lapse Still and Video Builder for IP Cameras. This system precisely positions an IP camera (or multiple cameras) and captures images from a JPEG, H.264, H.263, or MPEG stream. The images are stored in a series of directories. Time-lapse video is then assembled €œon demand€� with the user selecting the frequency/timing of shots: e.g., a time lapse with a snapshot at 8:00 a.m. each day, or a time-lapse composed of images every hour. The program identifies the images nearest the requested time and assembles an AVI or H.264 file, which is transcoded to SWF and FLV (or other selected) formats for web transmission. [C#, VB.NET, MS-SQL, videoDub, x264, MS SQL Database, Panasonic IP camera, GSP Systems IP camera, Bosch IP camera, ASP.NET, FTP]

Microhard/Radio Network Poller. A poller that accounts for signal drop on IP/ethernet radios. It continuously polls until successful or generates an alert when not successful. [VB.NET]

Wavetronix Data Collection. A data warehousing and polling module that queries Wavetronix radar sensors, parses the string values, stores the data in an MS-SQL database. [T-SQL, MS-SQL, triggers, stored procedures, VB.NET, ASCII string and binary conversions]

Traffic Speed Database & User Interface/Mapping. This software module takes speed data acquired from multiple sources and stored in an MS-SQL database and maps it using Google Maps API. [ASP, ASP.NET, VB.NET, Javascript, HTML, Flash, data marshaling across Flash/Javascript/VB desktop apps]

EOC (Emergency Operations Center) Camera Controller and Video Streamer. Network tunneler and camera device controller (SX-850) designed to overcome firewall blocking of UDP messaging. Video is streamed through a Flash Media Server or transcoded to H.264, WebM, Ogg, etc. for web streaming. [HTML, ASP.NET, network UDP & TCP/IP, VB.NET] Remote Signs Lite. A small laptop program for controlling matrix signs outside the firewall. [T-SQL, database triggers, DLLs, database launch of external programs using WIN32 API and Shell functions, ITC-HTTP, HTTP, C#, VB.NET]

Frac Van Satellite Data Transmission and Website. This consulting work, for Vanguard Stimulation of Houston, TX, was for operating and controlling a remote satellite connection, intercepting data from a Stewart-Stevenson data van by way of a mutex, processing the data, uploading it to a remote MS-SQL server, and charting/mapping the data on a website for transmission to clients. [MS-SQL, FracPro, C#, VB, Javascript, Flash, CSS, T-SQL, ASP.NET]

Voice-activated DMS/VMS. This is an application based on Google Voice. Voice mails are accepted by Google Voice, transcribed to text messages, and then sent to an e-mail account, which is queried and downloaded using SMTP protocols. Messages are matched to an approved list in an MS-SQL database via SOUNDEX() and DIFFERENCE() and, if a match is found, an NTCIP SNMP message package is constructed and sent via TCP/IP, Serial, or Modem transport to matrix signs, which display the requested message or graphics. [SNMP, MIB, SMTP, NTCIP, VB.NET, C#, C, network and serial protocols, T-SQL, Google Voice] E-mail-activated DMS/VMS. This does the same thing as above, but bypasses the voice activation and accepts e-mail and SMS messages sent via cell phone or SMTP.
Multi-threaded Matrix Sign Poller & Setter. A large, multi-threaded program that packaged command-and-control SNMP binaries for Matrix signs. Prior to this, all native (manufacturer based) control programs were synchronous, but this created an asynchronous environment of control of these devices. The user interface is like a property grid, and is built on the Visual Hint Smart Property Grid component. [T-SQL, VB.NET, C, SNMP]

Roadrunner Version 4. A multi-monitor user interface that controlled multiple modules for traffic control and systems built with Visual Studio 2005. It controlled multiple programs on 5-7 different computer systems (distributed computing). The program contained multiple controls for listing cameras, devices, computers, sensors, displaying maps, running diagnostics, controlling video walls, etc. It monitored network devices and computers using WMI interfaces, SNMP, and so on. More details below. [VS 2005, VB.NET, SNMP, SMTP, Flash, HTML, Javascript, CSS, WMI]

2006 €” 2007
Image Digitizer & Graphics Repair. (Consulting work for Animart Galleries) This VB program interfaced with a large-format scanner that digitized hand-painted animation cels from the Alexander Film library. The program would take a series of images from the digitized sequence, adjust color saturation and color values to match from one cel to another, clean the images of specks and acetate shine, create transparency for the background, adjust X and Y positions for image match, create png and other copies of images and record the image sequencing in a database. [T-SQL, MS-SQL, VB.NET, C, SNMP]

Animart Galleries website. (Consulting work for Animart Galleries) An all-Flash website constructed for marketing Alexander Film library cels and cel animation pencil drawings from the 1920s through 1940s. [Flash, VB, ASP.NET, ASP, VB6, Javascript, HTML] SQL Scheduler for DMS/VMS. An MS-SQL-based program that packaged command-and-control SNMP binaries for Matrix signs. Utilized the multi-threading properties of MS-SQL 2005 . Prior to this, all native (manufacturer based) control programs were synchronous, but this created an asynchronous environment of control of these devices using an SQL data table environment. [T-SQL, VB.NET, C, SNMP]

Roadrunner Version 3. A multi-monitor user interface that controlled multiple modules for traffic control and systems built with Visual Studio 2005. Ported most of an all-Flash interface to Visual Studio desktop application. It controlled multiple programs on 5-7 different computer systems (distributed computing). The program contained multiple controls for listing cameras, devices, computers, sensors, displaying maps, running diagnostics, controlling video walls, etc. It monitored network devices and computers using WMI interfaces. This version made extensive use of Windows Management Interface and Panasonic SX-850 controls, as well as 9x Media video windows. [9xMedia, ComPort Emulator, XML Spy, Altova editors, VS 2005, VB.NET, SNMP, SMTP, Flash, HTML, Javascript, CSS, WMI]

SX-850 Camera Controller-Revision. Revised an SX-850 camera control system to fit into Visual Studio 2005 and .NET environment. Also built a revised user interface in Visual Studio. [C#, VB.NET, DLL wrappers]

2005 €” 2006
PD-CAD Incident Database & Mapping. This is a PD-CAD (Police Department Computer-Aided Dispatch) monitoring system that parsed 911 response calls, sorted for fire/traffic/medical and performed geo-coding using the TIGER database, ESRI table conversions, and early Google Maps API. Mapped onto Flash maps generated from TIGER chains or ESRI chains. Displayed maps with incidents/traffic flows. [TIGER databases, MS-SQL, ESRI, VB.NET, VB6, Javascript, Flash, Flash Turbine, CSS, ASCII text manipulation, T-SQL]

HazMat Plume Modeling with Reverse Address & Telephone Capture. Proof-of-concept program written in .NET 2003 and Macromedia Flash. Data from NOAA sources, plus data from weather sensors maintained by fire and utilities departments are correlated and input into the modeling algorithms. The first operation calculates the plume height at a given downwind distance from the incident. The calculated plume rise is added to the plume source point to obtain the emission height. Then, ground-level pollutant concentrations at various downwind distances are predicted using the Gaussian dispersion equations. A reverse Boolean search of the database yields addresses and telephone numbers of households under threat. [TIGER databases, MS-SQL, ESRI, VB.NET, VB6, Javascript, Flash, Flash Turbine, CSS, ASCII text manipulation, T-SQL]

Mobile/PDA/Cell phone alerts. This software notification system had a number of methods built in for information dissemination including cell phone notification, PDA and portable device output, faxing, and printing to PDF and hard copy. Parameters covered included: integration of dynamic server-side content; image, audio, and video content from local and remote locations; conversion of video into multiple formats; dynamic insertion of all visual elements, including text, images, and audio; embedding of external ring tone-like audio formats, such as SMAF, MFI, MIDI, and FLCS; caching support; file optimization that avoided element duplication and created smaller file sizes. [ MS-SQL, ESRI, VB.NET, VB6, Javascript, Flash, Flash Turbine, CSS, ASCII text manipulation, T-SQL]

Traficon Video Detection Integration. This integrated Traficon video detection streams and data into the Roadrunner system. It collected data from remote stations and uploaded data via HTTP transfer and integrated video playback and conversion of legacy 8-bit AVI files into SWF files for web playback. [MS-SQL, VB6, MS Access, MySQL, XML, ITC-HTTP]

2002 €” 2004
Webcam & Video Stream Capture. This image capture program collected images from traffic cameras on the interstate highway system. The program was capable of capturing video streams (AVI files) as well as JPG, BMP, TIF, TARGA and other types of files. Images were saved via FTP to a disk system accessed by a website that distributed the images. [VB, T-SQL, MS-SQL, Access, FTP protocols, WS-FTP]

TIGER Mapping. Wrote a mapping program that took TIGER database street chains, decomposed the polygons using winding-number algorithms, created polys and mapped the subsequent location using Flash or SVG technology. System included a color picking option for NTSC colors, web-safe colors, or CMYK color systems. [MS-SQL, T-SQL, VB-6, Flash, SVG, various conversion algorithms]

Microsoft Voice. This program utilized the Microsoft Voice SDK to control camera selection, orientation, pan, tilt, and zoom through voice commands. [Microsoft Voice SDK, VB-6, TCP-IP, Flash]

Automated Video Broadcast Version II. This revised automated video broadcasting system took SWF (Flash) based timelines and dynamically generated content (traffic conditions, weather conditions, public service announcements, airplane departures/arrivals, etc) and switched cameras and cut in NTSC video feeds of traffic cameras for broadcast over cable television stations. [Flash, VB6, HTTP, TCP/IP, SVGA to NTSC conversion, WINSOCK socket serving, ITC-HTTP Data Mining]

Roadrunner Version 1. This traffic center control station was web based and used Flash for the operator’s interface. The back end used VB6, C++ DLLs and components, and MS-SQL. Hardware input types included: video detectors, radar, video, web XML feeds, web data mining, police CAD systems, weather feeds, data streams, and DCOM connections. Output hardware included fax, cel phone, PDA, broadcast (television), tape video, digital video, variable message signs, and printed media. Output formats included PDF, SWF, plain Text, AVI, XML, BMP, JPG, web datacasts, web streams. Operator inputs included keyboard, joystick, and voice activation. [Flash, VB6, HTTP, TCP/IP, SVGA to NTSC conversion, WINSOCK socket serving, ITC-HTTP Data Mining]

2000 €” 2002
Weather Database and Module. This module was one of the first modules for the Roadrunner traffic management system and automated a video broadcast system. It performed data mining operations on NOAA websites every ten minutes and collected and stored the following types of data into an MS-SQL 2000 DB: GOES West & East, water vapor, radar, precipitation type and quantity, wind speeds, cloud cover, temperature, heat index, relative humidity, thunder, dewpoint, and weather advisories. It had a small Flash-based display interface that could be cut into broadcast streams or a User Interface. [VB6, ITC-HTTP, Flash]

Automated Video Broadcast Version I. This automated video broadcasting system took SWF (Flash) based timelines and dynamically generated content (traffic conditions, weather conditions) and switched cameras and cut in NTSC video feeds of traffic cameras for broadcast over Cable Television Stations. [Flash, VB6, HTTP, TCP/IP, SVGA to NTSC conversion, WINSOCK socket serving, ITC-HTTP Data Mining]

Web-in-a-Box Content Management System. (Consultant) This content management system (CMS) was based on Flash and HTML. Data was stored in an SQL 7 and SQL 2000 database, as well as a ‘lite’ version that utilized an Access database. Flash files were generated using Flash Turbine. [Flash, HTML, Javascript, ASP, HTA, SQL, T-SQL, MS-Access]

Junior Achievement Website. (Consultant) Website built for Junior Achievement National Headquarters. [Flash, SQL 7, Access database, HTML, various DLL’s written in VB6] Several Video Projects. Produced a number of videos for the City of Colorado Springs on various topics, including: open spaces, waste water management, local government, 30-minute news shows, etc.

1998 €” 2000
Traffic Show. Produced a semi-automated traffic program for cable television during rush hours. Contained several dozen traffic cameras and announcements.
Automated Broadcast System. (Built an automated broadcasting system that would show programs at designated times for cable television. Controlled Betacam SP UV1800, Beta, Super VHS high-end tape machines.

Cable Broadcast System. Designed a cable broadcasting system for City of Colorado Springs.

Traffic Website. Built a traffic website based on Flash 3, Flash 4, and HTML that included webcam images captured using various software packages.

President & CEO PEGASUS LEARNING COMPANY Colorado Springs, CO
December 1991 to June 1998
One of three partners in an educational technology firm that specialized in building educational technology products for textbook publishers and school systems. Started company with $10,000 investment and took it to multi-million dollar revenues.

1997 €” 1998
Web Spider and Fax Sender. Built a web spider that crawled the web searching for fax phone numbers. Program would then trigger on Fridays at 12:01 a.m. and send faxes until 11:59 p.m., as we had Sprint free Fridays program. Faxes would be to school libraries, who were customers for our products.

Junior Achievement Grade 6 CD. A CD-Rom that contained a visual database, test bank, and several social-studies interactive programs targeted to 6th graders. [Allen C++ .NET]

Junior Achievement Grade 6 Videos. A series of videos targeted to 6th grade social science, distributed by Junior Achievement.

1996 €” 1997
Website for Pegasus. Built a corporate website using HTML version 1. [HTML] Online Content Approval Website. Built website for approval and storage of content for the Science Anytime Series, to be accessed by Harcourt. [HTML]

Junior Achievement Grade 5 CD. A CD-Rom that contained a visual database, test bank, and several social-studies interactive programs targeted to 5th graders. [Allen C++ .NET]

Junior Achievement Grade 5 Videos. A series of videos targeted to 5th grade social science, distributed by Junior Achievement.

Science AnyTime Videodisc Series. A series of 7 interactive videodisks and textbook materials produced in conjunction with Harcourt Brace of Orlando, Florida. Constituted 7 hours of programming with an accompanying CD-ROM Programming Guide. All the material was barcode accessible. Video screens were built using Photoshop and Avid Media Composer. The videodisks contained a database of 3000 images with corresponding text annotations. [Avid Media Composer, Photoshop, Allen C++, various image conversion programs, CSV database files, Hypercard]

1995 €” 1996
Science AnyTime Science Experiment Series. A series of over 60 videotapes and textbook materials produced for Harcourt Brace of Orlando, Florida. Constituted over 60 hours of programming with an accompanying Guides. [Betacam SP, Avid Media Composer, Photoshop, Allen C++, various image conversion programs, CSV database files]

Junior Achievement Grade 4 CD. A CD-Rom that contained a visual database, test bank, and several social-studies interactive programs targeted to 4th graders. [Allen C++ .NET] Junior Achievement Grade 4 Videos. A series of videos targeted to 4th grade social science, distributed by Junior Achievement.

Healthy 2000: Tobacco, Alcohol, & Other Drugs Interactive Videodisks. An award-winning interactive videodisk with barcode materials and barcoded controls. Produced for Churchill Media in Los Angeles. [Avid Media Composer, Photoshop, Allen C++, various image conversion programs, CSV database files]

1993 €” 1995
Healthy 2000: HIV & STDs Interactive Videodisks. An award-winning interactive videodisk with barcode materials and barcoded controls. Produced for Churchill Media in Los Angeles. [Avid Media Composer, Photoshop, various image conversion programs, CSV database files]

Harcourt Internet Project. Conducted research into Internet materials available for linkage to textbook series. Wrote a C++ portal that utilized Mosaic as a demonstration program.
Healthy 2000: Human Reproduction Interactive Videodisks. An award-winning interactive videodisk with barcode materials and barcoded controls. Produced for Churchill Media in Los Angeles. [Avid Media Composer, Photoshop, Allen C++, various image conversion programs, CSV database files]

Being Healthy Interactive Videodisks. An award-winning video series and accompanying print materials produced for Harcourt Brace of Orlando, Florida. [Avid Media Composer, Photoshop, Allen C++, various image conversion programs, CSV database files]

1991 €” 1993
Healthy You. A series of interactive 4 videodisks and barcoded textbooks produced for Scott Foresman in Chicago.

Science AnyTime Video Series. A series of 18 videos produced for Harcourt Brace in Orlando, Florida. Footage for these videos became the foundation for the Science AnyTime Videodisk Series.

A Closer Look. A series of 5 science videodisks and barcoded textbooks produced with Smithsonian Institution materials for Churchill Media in Los Angeles.

JavaScript, Angular, React, Microsoft SQL, PostgreSQL, MySql, Access, EXT-JS, DHTMLX Components, HTML5, XML Spy, Flash, SVG, C#, SQLite, Avid Media Composer, Adobe Illustrator, Adobe Photoshop, GIT

http://wheatbridge.com/resume

http://www.wheatbridge.com

  • Updated 8 years ago

To contact this candidate email wheatbridge@gmail.com

Contact using webmail: Gmail / AOL / Yahoo / Outlook

This entry was posted in . Bookmark the permalink.