Stephen Villee

Stephen Villee

Berlin, NH, United States
Hire Stephen
Scroll To View More
Stephen Villee

Stephen Villee

Berlin, NH, United States
Member since November 18, 2015
Stephen has been a software engineer for over 30 years. From developing software for the Unix platform in the 1980's to producing enterprise-level financial and eCommerce software on PHP, JS, and the C language family, he prides himself on being meticulous and developing high quality software. He is a dedicated, efficient individual and a great communicator, and looks forward to contributing valuable skills to your project!
Stephen is now available for hire
Portfolio
Experience
  • C, 20 years
  • Assembler x86, 20 years
  • Visual Basic, 10 years
  • MySQL, 10 years
  • PHP, 10 years
  • JavaScript, 5 years
  • Drupal, 5 years
  • jQuery, 3 years
Berlin, NH, United States
Availability
Part-time
Preferred Environment
Linux, Apache, MySQL, PHP. Git for source control.
The most amazing...
...software I've written is a marketplace for software development that ties developer income to performance, including penalties for bugs.
Employment
  • Software Engineer
    Plymouth Design Group
    2006 - PRESENT
    • Upgraded a client's online store from X-Cart 3 to X-Cart 5. This involved writing X-Cart 5 modules to implement custom functionality that had previously been implemented as hacks to the X-Cart 3 core.
    • Worked with a team to redesign the user interface for an online shipping marketplace. I acted as lead developer for the back-end software.
    • Developed a utility to allow an Excel application on the Macintosh to generate several reports and combine them into a single PDF.
    • Created a system to allow several Excel software products to be licensed for 30 days at a time. This included code on the server to calculate the expiration date, along with Excel macros to enforce it.
    • Added a "what if" sheet to an investment analysis spreadsheet to let the customer make incremental changes to key assumptions, and immediately see the effect on various metrics.
    • Developed a system to add a banner to each eBay listing for a given seller, encouraging buyers to use a particular company for shipping.
    • Developed a web application to show market value for wet shaving gear, based on data from eBay sales, obtained through Terapeak.
    • Enhanced the partnership section of an investment analysis spreadsheet to show the effects of waterfall tiers in partner distributions.
    • Added macros to an Excel application to allow data to be imported from an earlier version of the application.
    • Modified the admin section of a shipping marketplace to show a variety of sales analytics, and to download this information in CSV form.
    Technologies: PHP, JavaScript, Excel, VBA
  • PNACL Chrome Extension Developer
    Atlas Learning (via Toptal)
    2016 - 2016
    • Created a Google Native Client application to make a voice recording, encode it as MP3, and upload it to Google Drive.
    Technologies: C, Google Native Client
  • Software Engineer
    UTStarcom
    2000 - 2003
    • Developed a call control module to allow an analog phone to be connected to an H.323 network.
    • Tracked down and fixed several bugs in a vendor's H.323 protocol stack.
    Technologies: C, RTEMS
  • Systems Analyst
    Ticketmaster
    1993 - 2000
    • Developed firmware for a portable device to read barcodes on concert tickets, allowing venues to collect statistics about attendance.
    • Developed an ODBC driver to allow direct access to a ticketing database from applications such as Microsoft Excel. This consisted of over 10000 lines of C++ written in about three months.
    • Wrote a version of the Kermit file transfer program in Pascal, for use under a proprietary operating system used for ticketing.
    • Rewrote some accounting reports to use a Microsoft Access database to store sales data.
    • Wrote numerous utilities to import data about sold and reserved seats into a proprietary ticketing system.
    Technologies: Pascal, VAX Assembler, Microsoft Access, C++, ODBC
  • Software Engineer
    Viasoft
    1988 - 1993
    • Sped up several Viasoft product components by rewriting some database access modules. The performance of the analyzer improved by about 30%.
    • Wrote a utility to take the JCL for a COBOL compile and convert it into JCL to run the Viasoft analyzer. This was important because customers had such varied ways of running the COBOL compiler.
    • Developed a system to allow Viasoft products to be split into packages that would be dynamically loaded as needed.
    • Integrated the Viasoft editor into the regular ISPF editor so that there would be no performance penalty until one of the special Viasoft commands was invoked.
    • Found a bug in another vendor's product that was manifesting itself as a failure in a Viasoft product. Suggested a fix.
    Technologies: Pascal, IBM Mainframe Assembler, COBOL
  • Software Engineer
    Vidnetics
    1987 - 1988
    • Helped port an interactive cable video system for hotels and cruise ships to Unix System V.
    • Completely rewrote some firmware that served as a gateway between the in-room video board and the Unix System V head end. This was several thousand lines of Z80 assembler code.
    Technologies: Unix, C, Z80 Assembler, 6502 Assembler
  • Software Engineer
    Anasazi
    1984 - 1987
    • Developed general purpose network software for Unix.
    Technologies: Unix, C, x86 assembler
  • Software Engineer
    Honeywell
    1980 - 1984
    • Developed and maintained components of the GCOS 8 operating system.
    Technologies: Honeywell 6000 Assembler (GMAP), PL6
Experience
  • Persisting Data Across Page Reloads: Cookies, IndexedDB and Everything In-Between (Publication)
    Modern web browsers offer a number of different APIs and mechanisms to storing data on the client-side. But are all of these options created equal? In this article, Toptal engineer Stephen Villee demystifies the various client-side storage options available in modern web browsers and explains how each of these can play a role in storing session data on the client-side.
Skills
  • Languages
    Assembler x86, JavaScript, C++, PHP, C, Visual Basic, Pascal, Java, COBOL, Ada
  • Storage
    MySQL
  • Frameworks
    CodeIgniter, Bootstrap, AngularJS, Loopback, ZURB Foundation
  • Libraries/APIs
    jQuery, Facebook API, Node.js, eBay API
  • Platforms
    Drupal, WordPress
  • Misc
    Google N
Education
  • Bachelor of Arts degree in Mathematics
    Harvard University - Massachusetts
    1977 - 1980
I really like this profile
Share it with others