Resume

Programmer with diverse experience in designing, implementing and deploying .NET, Java and Python software applications.  Specific expertise includes graduate level education in Computer Science and Bioinformatics.  Strengths include a solid background in pharmaceuticals and health care.

Technical Proficiencies

Highly Competent: ASP, C#, Java, JavaScript, JScript, Linux, Python, Windows
Familiar/Past Competence: ASP.NET, CSS, JSP, MySQL, Perl, Oracle, Unix, VB, XML
Formal/Self Education: C/C++, R, SQL Server, Win32 API

Experience

SDET II, Microsoft Corporation
(6/2010 – Present)

Building tests and test automation for Amalga health care platform.

Senior Computer Scientist, White Oak Technologies
(5/2009 – 6/2010)

Delivered high-priority customer feature request ahead of schedule. Within 6 months, selected as lead developer for automated build framework (Bash/Python) for large-scale web application.  Achieved 3X speed increase for automated build as well as increased reliability.  Improved testing of upload tool by building PyUnit test automation framework.  Designed and programmed AJAX application using Python/Javascript for data transfer tool.  Re-designed event broadcast architecture using Javascript.  Selected to review team’s testing procedures.  Selected to participate in GUI design review.

Senior Programmer Analyst, Mount Sinai Medical Center
(11/2007 – Present)

Programmed 100% of thick-client Tablet PC application using .NET C# and NHibernate/MySQL. Its data synchronizes with a SUSE Linux server that uses my Perl scripts to copy the synchronization records to a final database. Solved long-standing distributed synchronization problem. Built and deployed desktop software using VB and Access for use by clinical staff. Pioneered use of NUnit/VBUnit test cases, SVN, FogBugz defect tracking and Agile Timebox development. Launched division’s first intranet clinical website.  Transitioned to consultant role as of April 2009.

Lead Programmer Analyst, Stony Brook Medical Center
(2/2006 – 11/2007)

Programmed multi-threaded thick-client Java application for use in the operating room using Java Swing and RMI. Automated monitoring of over 20 Oracle 10G databases using Java, Python and PL/SQL. Developed and implemented distributed architecture making heavy use of Oracle Streams. Built several Java Server Pages web applications using Tomcat for hospital staff. Oracle 10G consultant for graduate research projects at Stony Brook University.

Software Developer/Project Manager, LifeTree Technology
(2/2001 – 2/2006)

Promoted in 1 year to project manager in start-up environment. Led migration of clinical trial web application to .NET platform using ASP.NET, C#, CSS, JavaScript and SQL Server. Improved and integrated Windows Service solution for DPAPI connection string encryption to address security vulnerability using ASP and C#. Frequently recruited to resolve time-sensitive customer and production issues.

Education

Johns Hopkins University
MS in Bioinformatics
GPA: 4.0
SUNY at Stony Brook
BS/MS in Computer Science
GPA: 3.8

Academic / Research

Awarded runner-up at Long Island Software Awards (LISA) for Java desktop application. Led migration to AJAX for Marine Biology JSP web application. Learned (almost overnight) Java-based DWR AJAX technology for integration into JSP application. Recommended and delivered JSP/Tomcat application ported from Windows to Linux platform. Selected from group of approximately 100 to develop Chemistry student-learning system.

Hobbies and Interests

  • Bioinformatics
  • Getting Things Done (GTD)
  • Software Blogging
  • Software Testing

Sample Articles (with reviews)

Top 10 differences between Java and C#

  • “good read, i forgot most of this…” -raveman”
  • This is a great list. Thanks for taking the time to post it.” -Chad Campbell

Why does an abstract class need to implement interface methods?

  • “Really great explanation, thanks!” -Nicolas Buduroi
  • “Great job writing this article, this has to be very confusing to Java people who also have to write C# — at least it was for me when I first started implementing interfaces with abstract base classes.” -Joonas Koivunen
  • “…Wanting to know why this craziness was required I was lucky enough to find your page through google. Thank you for the explanation!” -Arash

Overload the array square bracket operator in C#

  • ”Thanks, that worked great. Plus the stackoverflow link helped too. Cheers mate!” -Chris

Quick and dirty “dirty checking” for Windows form, C#

  • “Seems to work like a charm! Thanks! You saved me a few hours (possible much more) with this snippet.” -Wayne
  • “This is a very good post. As you said, a straight forward time saver. This should go to the new blog.” -Guillaume JAY