Roger Binns

Email contact: rogerb@rogerbinns.com

The position I am best suited for is one that combines Sales Engineer, Business Development, Software Architect, Product Marketing Engineer, Product Manager and Consultant. I enjoy visiting customers and partners, helping to close sales, fight fires, and having a positive impact on customer implementations and experience. I complete the feedback loop to internal development and product management with what worked well, considerations of future functionality, and areas of new potential (including development of prototypes, bug fixing and small pieces of custom development).

My goal is to do whatever it takes to make things better for developers, partners and customers. I prefer to work in small companies and startup like environments.

I am located in the San Francisco Bay Area in California (Santa Cruz), and can legally live and work anywhere in the USA and European Union.

A note for recruiters

RELEVANT SKILLS INCLUDE

WORKING HISTORY

January 2007 - December 2007

Devon IT
Consultant/contractor reporting to CTO

I was brought on to do product management for BladeWorks. After doing initial roadmaps etc, I did development work to help bring the product to initial release and to ensure everything was covered.

  • Initial product roadmap, admin web interface prototype, initial administrator visible component specifications
  • Critique of partner products and protocols (security, future capabilities, interoperability with networking)
  • Designed and drove changes in partner product to drastically simplify initial setup and configuration for customers, resilience to network and administrative changes
  • Got a wiki up and going (trac), put in lots of content that wasn't being recorded anywhere
  • Architecture for the various components
  • Protocol specifications for intercomponent communication
  • Found numerous bugs in components, fixed some serious ones (C++, QT, strace, ltrace, valgrind, gdb)
  • Implemented Apache module (C, Python), REST style public interface (text, JSON, XML)
  • Implemented CLI talking to REST (Python)
  • Implemented web administration interface talking to REST (Javascript, YUI toolkit) and admin components (Python, Genshi)
  • Implemented an automated testing system linked to trac tickets to repeat bugs, catch regressions etc (Python, unittest, Selenium RC, Javascript)
  • Implemented a single command product build system that produced a VMWare appliance as output (Python, ccache, VMWare Server, Ubuntu debootstrap)
  • Implemented a control console application inside appliance (Python, whiptail)
  • Implemented an automated tester with device emulators (Python, nlite Windows installation customization, VMWare Server)
  • Implemented a core dump catcher which grabbed all relevant information into a dump file (eg open files, memory maps, core image) and build system component for getting backtraces (Python, gdb scripting)

September 2004 - August 2006

Juniper Networks (acquired Peribit)
(Diverse responsibilities) Product Management Group, Application Acceleration Products
Peribit Networks Consultant reporting to CTO

A substantial part of my effort was focussed on acceleration for the following protocols for the WX/WXC platforms (in addition to some others not made public yet):

  • SMB/CIFS - Microsoft file sharing protocol
  • MAPI - protocol between Outlook and Exchange
  • HTTP - browser based applications
  • SSL - secure sockets layer

Complete lifecycle for features/functionality

Invention
  • Brainstorming of new ideas for enhancing existing product functionality and future functionality
  • Techniques to accelerate various protocols and applications from customers
  • 2 patent applications
  • Subject matter expert on Microsoft protocols and products
Product Management
  • Assisted product managers
  • Authored product requirement documents (eg for SSL acceleration)
  • Implemented prototypes to judge user experience and feasibility (eg SSL acceleration proxy)
  • Estimates of development effort and risk to guide product management and business development
Development
  • Architecture discussions as well as guidance on implementation issues
  • Developed tools to analyse behaviour of our own and other products such as graphical display of file segment caching, heuristics for improving hit rates, csv output from Ethereal traces for pivot table analysis in Excel.
  • Reverse engineered MAPI protocol, wrote Ethereal MAPI decoder
Testing/QA
  • Tools that caused degenerate behaviour to investigate edge cases and proper handling
  • Test plan drafts to help QA ensure they provided complete test coverage
  • Sourcing of testing tools, both free and commercial to help ensure compliance
  • Authored benchmarking tools to evaluate performance (eg Microsoft Office automator, driving Internet Explorer)
Marketing
  • Initial drafts of material pushed out by product marketing
  • Found flaws in competitor products (architectural and bad bugs), documented flaws in white papers with test cases
Customers
  • Assisted support with customer issues
  • Assisted escalations engineering with customer issues
  • Gathered technical information from customers to establish how their protocol and application problems could be solved, producing reports on suggested solutions (go back to invention)

Communication

  • Maintained Wiki for product group, used by product management and development, authored extensions such as display of CSV data and source code highlighting (MediaWiki)
  • Authored numerous pages
  • Worked across internal product groups on issues affecting multiple product lines currently and in the future
  • Podcast on Windows Vista and WAN Optimization
  • Active participant on internal discussion and help groups with sales engineers

Business development

  • Worked on technical side of business relationships with 3 major software companies
  • Investigation of product fit and potential modifications to enhance joint value

Developer productivity

  • Evaluated static analysis tools
  • Analysis of moving from SourceSafe to Subversion source code control system. Presentation to engineering, ran Subversion server and authored/enhanced scripts to migrate data.
  • Spread usage of VMWare and Virtual PC in development and QA

July 2003 - December 2004

Various companies
Consultant

  • Product competitive technical analysis and strategy

  • Various other work (all under NDA)

MainSpring Ventures
Background research and analysis.

Unfunded local startup
(October 2003 till Sept 2004)
VP, Architecture, Design, proof of concepts and prototypes

  • Helping with company strategy moving towards getting funding

  • Architecture of distributed multi-media environment

  • Development of prototype software: PocketPC 2002 Phone Edition, Windows XP Embedded, data and SMS, C++/MFC/Python, Linux web backend (PHP, Python, Perl and XML-RPC)

August 1993 - June 2003

Tarantella Inc, (Formerly IXI Limited, a division of The Santa Cruz Operation)
Cambridge, United Kingdom and then Santa Cruz, California
Various awards such as Employee of the Year, President's Club, Employee of the Quarter

Responsibilities:

Business Development Manager and Solutions Architect - Strategic Alliances Group

  • Working with strategic partners to develop business and technical relationships, to the benefit of joint customers and partners.

  • Technical consulting on customer projects.

  • Feasibility study and prototype implementations of potential projects.

  • Managing high priority customer issues, onsite visits.

  • SunTone qualification of the Tarantella Enterprise product

Previous responsibilities:

Software Architect - Development Division

  • Architecture, design and implementation of products.

  • Member of company wide Technical Strategy Group.

  • Training world-wide, On-site consultancy.

  • Reverse engineered Microsoft Terminal Services protocol (RDP) and file and print protocol (SMB).

Products:

Tarantella - Three-tier application broker
Tarantella is software that sits between an application server and a user with a web browser. It takes the application display protocol and provides a optimized display for the user. Additionally by acting as an intermediary it is possible to provide session suspend and resume, enhanced security, load balancing and similar functionality. I was the architect for the non-display side from inception through shipping, later taking on roles in sales, marketing and business development. The company renamed itself around this product. Version 1 was implemented in C++ with version 3 predominantly in Java.
VisionFS - SMB/CIFS server
Running on Unix, VisionFS was written from the ground up to provide Windows file and print services. It was written in C++ and was the first C++ project for our division. There was and extremely strong emphasis on ease of use and data integrity. Much of the framework code was later used to kickstart the Tarantella project. I was the architect and team lead from inception through shipping.
IXI Mosaic
Many enhancements to NCSA's Mosaic web browser to add (then original) features such as integration of help and proferences, client side scripting, drag and drop, URL links. Implemented in C with TCL scripting.
 
IXI Panorama
Highly configurable and usable panning window manager based on the Motif Window Manager. Implemented in C with TCL scripting.
 
IXI X.desktop
Porting and maintenance of IXI's flagship desktop product. Implemented in C with proprietary scripting.

1989 - 1993

While at University I did 3 six month work placements (required as part of the degree).

  • 1990 Contracting agency: Mostly data entry, but also IBM AS/400 and Cobol as well as supporting various external customer DOS and WordPerfect environments.

  • 1991 ICL: Ported a UNIX virtual terminal protocol terminal emulator (it's all part of the OSI stack) to Windows 3.0 and later 3.1.

  • 1992 ICL: Wrote an email gateway on UNIX between Novell's MHS system and X.400. Did third level support for Netware for UNIX.

EDUCATION

Brunel University. BSc (Hons) Computer Science (Upper Second)
Uxbridge, London, United Kingdom (1989-1993)

Waterford Kamhlaba United World College of Southern Africa International Baccalaureate
Mbabane, Swaziland (1983-1988)

OPEN SOURCE/PERSONAL PROJECTS

I started all these projects to solve various problems for myself, and provided them as open source. They include varying amounts of contributions from others.

APSW - Another Python SQLite Wrapper

http://code.google.com/p/apsw

BitPim

http://www.bitpim.org

I was the founder, project manager and lead developer. Leadership has since successfully been handed over to someone else and I am no longer involved.

UML Builder (Dormant)

http://umlbuilder.sourceforge.net

IMAP Spam Begone (Dormant)

http://www.rogerbinns.com/isbg

PATENTS

6,362,836 Universal application server for providing applications on a variety of client devices in a client/server network, granted March 2002. Joint inventor.

There are currently 3 other applications at the Patent Office.

REFERENCES

Unsung heros of open source, John Udell column at InfoWorld.

Linked-in at http://www.linkedin.com/in/rogerbinns