Wednesday, June 10, 2009

A little history

Most recently I've spent the last year exploring some technologies and business ideas. This has led me on a journey that so far has gone through OBD-II car technology, smartphone development (Android), PHP, Facebook API, Firefox addons, Javascript, and most recently Python (django and Pinax).

My career started on the embedded side, on custom firmware developed for i960 on a custom FDDI board. In the meantime I've worked from assembly on up to Javascript.

In 1996 I was on the founding development team of New Oak Communications (acquired by Bay, then Nortel), where we developed an enterprise VPN platform. I was part of the team there that defined the C++ object-oriented core architecture of the product. My focus was on PPP and the related tunneling protocols of the day. I ported legacy PPP code to a C++ based O-O implementation, and wrote O-O C++ implementations of L2F, PPTP, and L2TP. I became an expert in L2TP at the time, and wrote a book on that protocol (happily all good reviews at Amazon here). L2TP has since evolved, and I haven't kept up with it.

In 2000 I was on the founding team of WaveSmith Networks (acquired by CIENA), where we developed a carrier ATM and Frame-Relay switch (later MPLS and more). We had a co-architect arrangement there, and I defined and developed quite a bit of the C++ based infrastructure on the embedded side and some of the common equipment subsystems. I later moved over to help out the network management group and my move up the stack began. I became the EMS architect and team lead, and oversaw the major overhaul of the monolithic EMS java application into a J2EE based solution.

In 2005 I was on the founding team of BlueNote Networks as the software architect, where we developed an enterprise VoIP software platform. In addition to definition of the overall architecture, I moved back in to C++ development to code large parts of the software infrastructure for the product. I also worked on some of the management platform in Java, and led the development of SOAP based web services in the product (implemented in Java using xfire (since renamed CXF)).

Along the way I've worked on several communication protocols deeply: SIP, SOAP, MPLS, FR, ATM, L2TP, L2F, PPTP, PPP, Ethernet switching, FDDI.

And several languages: Assembly (i960 & i386), C, C++, Java, PHP, Javascript, Python.

And of course lots of other random technologies that come up along the way.

No comments:

Post a Comment