Steven Parkes

Location
San Francisco Bay Area
Industry
Computer Software

As a LinkedIn member, you'll join 300 million other professionals who are sharing connections, ideas, and opportunities.

  • See who you and Steven Parkes know in common
  • Get introduced to Steven Parkes
  • Contact Steven Parkes directly

View Steven's full profile

Steven Parkes's Overview

Current
  • Staff Software Engineer at Twitter
  • Independent Software Developer at smparkes.net
Past
  • Software Engineer at Square
  • Senior Cloud Engineer at Aptana, Inc.
  • Senior Software Engineer at IBM
  • Senior Software Engineer at IBM Research
  • Senior Software Engineer at IBM Research
  • Principal Engineer at AccelChip, Inc.
  • CTO at ShortCycles, Inc.
  • President at Sierra Vista Research, Inc.
  • Software Intern at Synopsys
  • Software Engineer at Grass Valley Group, Inc.
Education
Connections

440 connections

Websites

Steven Parkes' Summary

I write software because I enjoy it. I like to create and build, as much as I do it for the income. My best efforts are labors of passion.

I've been in lead roles and can again, as needs be (particularly in early startups) but I'd not want that to be my only responsibility (particularly in larger organizations). I thrive on challenge and I thrive on creating.

In many ways, I'm a generalist. Many technical things interest me. I've done both hardware and software (the hardware was quite some time ago). I like creating software more than creating hardware but I like understanding everything.

I like knowing various tools/languages so I can choose one that fits a given task. That said, I'm not crazy about PHP or Windows/.NET.

In specific tasks, I enjoy going as deep as required whether that's algorithms or tools/bugs. I've implemented various interesting algorithms, most recently a variant on the VCGC concurrent garbage collection algorithm. I've tracked down various bugs (sometimes with patches, sometimes not), most recently in LLVM, Sun's JVM, openssl, libcurl, and a number of Ruby gems. The list is too long to remember which is why I tend to be deeply conversant in algorithms/languages/runtimes only when I'm actively working with them.

I'm not a rock star. I tend more towards a cappella.

I'm not a rocket scientist. My degrees are in Electrical Engineering.

I'm not a ninja; more earth tones than black. I did (thanks to the NSF) take three years of Japanese in grad school, though

I'm not an architect, not if architect means only pushing boxes around. I push boxes around as needs be, but much of the interesting stuff is in what it takes to bring those boxes to life.

I make a rotten evangelist/advocate. I'm good at giving technical talks, even at varying technical levels, but I'm not good at selling, particularly things I don't believe.

http://www.linkedin.com/in/smparkes
https://github.com/smparkes
http://stackoverflow.com/users/191215/smparkes

Steven Parkes' Experience

Staff Software Engineer

Twitter

Public Company; 1001-5000 employees; TWTR; Internet industry

July 2013Present (1 year 4 months) San Francisco

Independent Software Developer

smparkes.net

February 2008Present (6 years 9 months)

Developed Snapsly (now retired), an iOS app and Java/Scala-based Linux web service for exchanging and maintaining contact connections. The client and server implement a novel proprietary mechanism that keeps information always available and up to date on everyone's devices in real time. This was soup to nuts mine: from the design of a real time distributed sync mechanism to debugging bad memory in a server, and everything in between. Principal technologies: C++, Objective-C(++), Java, Scala, Ruby, iOS (UIKit, MapKit, AVFoundation, CoreLocation, CoreText, Grand Central Dispatch, Crashlytics, etc.), Linux, SQLite, Postgresql, Redis, MongoDB, Scalatra, Jetty, Rails, Nginx, HAProxy, OpenVPN, Nagios, Chef, git.

Active contributor to Zebra Crossing (ZXing), the cross-platform barcode decoder. I've made most of the contributions to the C++ and Objective C ports over the last couple of years as well as contributing a few improvements to the primary Java source. I did the iOS 4 port and wrote new cross-platform (OS X/iOS) Objective C classes that interface to the core C++ classes. Principal technologies: C++, Objective-C(++), Java, MacRuby, Linux, iOS (UIKit, AVFoundation), OS X (AppKit, QTKit).

Developed a number of open source tools for client/server and peer-to-peer (HTML5) distributed programming using XMPP. Developed a number of tools to support test-driven JavaScript development. Developed under contract the open source Open Video Digital Library Toolkit, a Rails application. Developed under contract ScienceCheck, a Rails social application targeted at researchers in the sciences. Principal technologies: Ruby, JavaScript, C, Rails, jQuery, EventMachine, XMPP, Erlang.

Software Engineer

Square

Privately Held; 501-1000 employees; Financial Services industry

September 2012July 2013 (11 months) San Francisco, CA

Built analytics infrastructure and applications for risk, business intelligence, and performance monitoring/analysis. Principal technologies: Java, Ruby, Hadoop, HDFS, Cascading, Kafka, Datameer, Postgresql, MySQL.

Senior Cloud Engineer

Aptana, Inc.

Privately Held; 11-50 employees; Computer Software industry

November 2008May 2009 (7 months)

Supported and extended cloud infrastructure for cloud service offering, including provisioning and monitoring systems in Java and Ruby. Worked with support team to provide 24x7 service availability. Principle technologies: Java, Ruby, Rails, OpenSolaris.

Senior Software Engineer

IBM

Public Company; 10,001+ employees; IBM; Information Technology and Services industry

August 2006February 2008 (1 year 7 months)

Advanced development and prototyping in the office of the CTO of IBM’s Information Management product line, including databases, content management, and search. Supported Apache Lucene within IBM including bug fixes and new feature/functionality, contributed back to the Apache community. Evaluated and produced prototypes of new web-focused technologies, primarily focusing on Web 2.0 technologies, mashups, and RESTful web services. Key contributions: bug fixes and several new features for Apache Lucene, prototypes Principal technologies: Lucene; Linux; Java; Ruby; Rails; Atom; AtomPub; RSS; Amazon Web Services (AWS); Subversion; JIRA;.

Senior Software Engineer

IBM Research

Public Company; 10,001+ employees; IBM; Information Technology and Services industry

July 2004August 2006 (2 years 2 months) Almaden Research Center

Research and development in network file systems for networked attached storage (NAS). Work focused around version 4 of the NFS protocol. Key contributions: developed user-level and kernel-level functions related to advanced functions of NFSv4 for namespace management, data movement and replication across NFS servers. Developed code to run in user space on Linux and AIX and in kernel space on AIX. Principal technologies: UNIX (AIX, Linux); C (gcc, AIX); Python; open source development tools (gnu make, subversion, bugzilla); Rational tools (Purify).

Senior Software Engineer

IBM Research

Public Company; 10,001+ employees; IBM; Information Technology and Services industry

November 2002July 2004 (1 year 9 months) Almaden Research Center

Technical lead on IBM’s Advanced Text Analytics platform, WebFountain, which performs unstructured data mining and analysis on content from multiple sources (broad web crawls, focused web crawls, and licensed sources). Key contributions: developed experimental prototypes to analyze target problems in multiple verticals (pharma/biotech, CPG, tech); developed advanced techniques for data cleansing of web content prior to higher level analysis; worked with business development team to develop and refine vision and specification for next generation applications; co-lead development of architecture for next generation application; developed plans for evolving the maturity level of the development processes. Principal technologies: Linux; g++, PERL, Python, Java, information retrieval, natural language processing, machine learning.

Principal Engineer

AccelChip, Inc.

Privately Held; 11-50 employees; Computer Software industry

October 2001September 2002 (1 year)

Core member of development team bringing to market EDA CAD behavioral synthesis
application to create designs for FPGA devices based on digital signal processing algorithms expressed in MATLAB. Key contributions: created architecture and implementation for automated generation of testbenches in VHDL and Verilog supporting simulators and RTL synthesis tools from Model Technology and Synplicity. Principal technologies: UNIX (Solaris, Linux); Win32 (WinXP, Win2K, Win95); C++ (gcc, VC++); open source development tools (gnu make, CVS, GNATS, emacs, cygwin); Microsoft tools (Visual Studio, nmake); Rational tools (Purify, Quantify). AccelChip was acquired by Xilinx in 2006.

CTO

ShortCycles, Inc.

July 1999April 2001 (1 year 10 months)

Led the development of web-based enterprise software product for distributing sales and marketing information to field sales representatives and channel partners in a venture-backed (NEA, Sigma, angels) startup. Solution used advanced data modeling techniques based on RDF/XML to enable navigation of extremely large repositories. Key contributions: defined product architecture; developed major modules in C++ and PERL using HTML and JavaScript web interface; co-developed custom servlet-based architecture for distributed processing implemented via XML over HTTP; led evaluation projects of J2EE and JSP for next generation product and rapid prototyping; prototyped proof-of-concept WebDAV product interface; produced product specs for ICE interface. Principal technologies: UNIX (HP-UX, Linux); C++ (gcc, HP-UX), RDBMS (Oracle); SQL (PL/SQL, OCI); PERL; Web (Apache, HTTP, XML, SSL, HTML, DHTML, JavaScript, servlets, Java).

President

Sierra Vista Research, Inc.

October 1994July 1999 (4 years 10 months)

Founded SVR as a small, select consulting organization focusing on complex projects requiring senior development expertise with potential for productization. Grew company to four senior engineers and one marketing professional before joining with seasoned sales and marketing executive team to form ShortCycles, Inc. Key contributions: co-developed architecture and implementation for concurrent object-oriented programming system under subcontract to DARPA; led team to develop, propose, close, and deliver several consulting projects with enterprise clients. Principal technologies: UNIX (HP-UX, Linux, Solaris), C++ (gcc, HP-UX, Solaris); RDBMS (Oracle, Informix [now DB/2]); SQL (PL/SQL, ODBC, OCI); PERL; Web (Apache, HTTP, HTML, DHTML, JavaScript), Berkeley DB.

Software Intern

Synopsys

Public Company; 5001-10,000 employees; SNPS; Computer Software industry

May 1988August 1988 (4 months)

Created a Verilog model for an industry standard microcontroller as an example synthesis project. Implemented and benchmarked a logic optimization based on min-cut network flows.

Software Engineer

Grass Valley Group, Inc.

Privately Held; 1001-5000 employees; Broadcast Media industry

June 1983August 1985 (2 years 3 months)

Member of small team developing new product for special effects in production digital video. Product contained over twenty boards containing up 400 ICs each, each with one or more embedded microprocessors, microcontrollers, and DSPs. Key contributions: developed digital signal processing board for live-video background and border effects with single embedded controller for communications and field-rate processing; developed central hub containing five microprocessors and microcontrollers for frame rate computation and communication, both to other boards in system and to user control panel; developed software architecture for multiprocessor communication and implemented architecture for two cards. Principal technologies: 68000 embedded processors; embedded controllers; VLSI board design; custom hard realtime kernel design; shared-memory and message-passing based intra- and inter-board microcontroller-based communication; board level hardware design for digital video DSP hardware.

Steven Parkes' Organizations

  • XSF - The XMPP Standards Foundation

    • July 2009 to Present

Steven Parkes' Projects

Steven Parkes' Patents

Steven Parkes' Honors and Awards

  • Pauline and George Yampool Scholarship

    University of California, Davis
    • September 1981
  • B.S. with Highest Honors

    University of California, Davis
    • June 1982
  • IEEE/Motorola Noble Fellowship

    IEEE
    • September 1982
  • University of California Regents’ Fellowship

    University of California, Davis
    • September 1982
  • Digital Equipment Corporation Fellowship

    Digital Equipment Corporation
    • August 1988
  • National Science Foundation Fellowship

    National Science Foundation
    • August 1988

Steven Parkes' Skills & Expertise

  1. Scala
  2. C++
  3. Ruby
  4. Java
  5. JavaScript
  6. Objective-C
  7. JRuby
  8. Sinatra
  9. Redis
  10. RSpec
  11. JSON
  12. JSLint
  13. OAuth
  14. Curl
  15. jQuery
  16. Cocoa
  17. Cocoa Touch
  18. PostgreSQL
  19. Chef
  20. SQLite
  21. Ruby on Rails
  22. Git
  23. Distributed Systems

View All (23) Skills View Fewer Skills

Steven Parkes' Education

University of Illinois at Urbana-Champaign

PhD, Electrical Engineering

19871994

Thesis: A Library Approach to Concurrent Object Oriented Programming with Applications to VLSI CAD

University of California, Davis

MS, Electrical Engineering

19821983

Thesis: Transform Techniques in the Segmentation of Noisy Speech

University of California, Davis

BS, Electrical Engineering

19781982

Contact Steven for:

  • consulting offers
  • new ventures
  • expertise requests
  • business deals
  • reference requests
  • getting back in touch

View Steven Parkes’ full profile to...

  • See who you and Steven Parkes know in common
  • Get introduced to Steven Parkes
  • Contact Steven Parkes directly

View Steven's full profile

Not the Steven Parkes you were looking for? View more »

Viewers of this profile also viewed...