Post Job Free
Sign in

Java Developer

Location:
Arlington, MA, 02474
Salary:
50K+
Posted:
June 23, 2011

Contact this candidate

Resume:

Career Objective

Design and develop server-side solutions using Java, J2EE, and WebSphere with a strong interest in multi-threading, socket communications, asynchronous messaging, and Java internals (JVMTI and byte-code instrumentation). In addition, I have been transitioning into developing web applications and have learned a few new skills, i.e., LAMP – Ubuntu Linux running the Zend server with PHP and MySQL. In addition, Drupal 7.x.

Technical Areas

LAMP (Ubuntu Linux, Zend Apache distribution, Mysql, and PHP), Drupal 7.0, HTML, CSS, Java (all versions), J2EE (Spring, JSP, Serlet, & EJBs), WebSphere (4.0-6.1 in z/OS and Windows), ColdFusion (course work), Hibernate, multi-threading, socket communications, JDOM, DOM, SAX, XML, Javascript, JMS, DB2, Oracle, PL/SQL, JDBC, ODBC, SQL, byte-code instrumentation (BCI & DBCI), JVMPI, JVMTI, C, C++, WebSphere Studio Application Developer, Rational Application Developer, WAS Admin Console

Certificates

WebSphere Studio Application Developer 5.0

WebSphere Application Server 5.0 for z/OS Administration

Work Experience

COMPANY: Priometric Authentication Security Services

TITLE: Software Developer

START DATE: July 2010

END DATE: October 2010

WORK DESCRIPTION:

Developed a working prototype to demonstrate potential Biometric Authentication server similar to MyOpenId with additional biometric and smart card authentication.

Startup company in its infancy and looking for venture capital

Participated in the Mass Challenge startup competition where we advanced to the 2nd round.

Developed prototype using the following technologies: Presentation - Apache Wickets, Middle tier - openid4java API for OpenID functionality, Backend – MySQL using JDBC.

Endeavor is currently on hold while company looks for funds and researches potential patent conflicts regarding biometric transformation technology.

Currently working on implementing Spring and Hibernate technologies to replace Wickets and JDBC code.

COMPANY: Compuware APM Lab

TITLE: STROBE for WebSphere Technical Lead

STROBE for Java Technical Team member

START DATE: January 2005

END DATE: January 2008

WORK DESCRIPTION:

Responsible for research, design, prototyping, and implementation of new Product offering using the JVMTI API and byte-code instrumentation. The product was a multi-process/multi-threaded solution for determining application performance in Java and WebSphere environments.

Designed and developed a single solution to replace the STROBE for WebSphere and STROBE for Java products using Compuware’s proprietary Java byte-code instrumentation technology

Incorporated Compuware’s Vantage JVMTI Java agent into the STROBE product architecture

Researched and designed modifications to existing instrumentation code to instrument around calls to all non-instrumented method invocations. This was necessary due to complications in instrumenting certain system classes in the z/OS environment.

Designed, prototyped, and implemented a 100% Java multi-threaded central server to handle all TCP/IP communication between STROBE and multiple JVMTI agents. Central server handled administration of multiple agents and measurement sessions, TCP/IP port management, caching of agent measurement data, creation of XML containing report data, and logging functionality. Designed reusable architecture to handle socket communication, parsing and creation of XML messages using JDOM, and threading.

Designed and implemented code to incorporate STROBE measurement functionality into the Vantage Agent technology, i.e., socket communication with Central server. (90 % C/C++ / 10% Java)

Chosen by Compuware as a subject matter expert and given an extended contract to help with the knowledge transfer from the Cambridge lab to the Corporate headquarters in Detroit. Transition contract consisted of product training and detailed knowledge transfer of new and old projects related to the STROBE for WebSphere/Java products

Assisted Product Architects with alternate technology solutions to bring product offering to the market sooner

START DATE: June 2001

END DATE: January 2008

WORK DESCRIPTION:

Responsible for design, implementation, and problem resolution for the legacy STROBE for WebSphere and Strobe for Java products.

Led large team that developed the STROBE for WebSphere Application Server product offering that provided performance metrics for Servlets, JSPs, and EJB applications running in the WebSphere Application Server for z/OS environment

Became company wide WebSphere contact and helped MIS and developers learn and troubleshoot problems with WebSphere administration (server and environment setup), application deployment, etc. in the Windows and z/OS environments

Assisted in design and maintenance of the STROBE for Java product offering

Resolved serious design limitation in the STROBE for Java product by reverse engineering IBM’s SVC Dump tool to provide product support for Java 1.4.x z/OS environments. Due to internal changes in IBM’s JVM for z/OS STROBE could not traverse the java and native stacks to show call stacks associated with activity hot spots.

Designed and prototyped new Java product feature to navigate to application class and jar file directories to extract class and method names. This idea was then incorporated into the STROBE for Java product offering to provide class and method selection capabilities for measurement targeting.

COMPANY: Compuware Numega Lab

TITLE: Senior Software Engineer II

START DATE: February 2001

END DATE: May 2001

WORK DESCRIPTION:

Member of small design team tasked in defining, designing, and developing a Java application error detection tool. Delegated to researching Java technologies useful in developing error detection tool.

helped educate team members with Java technology

Researched Java Virtual Machine specification to understand how the JVM operates and processes Java class files.

Researched Sun's Java Virtual Machine Profiling Interface (JVMPI) to determine how to extract Java information and implement byte code instrumentation at runtime.

COMPANY: Compuware APM Lab

TITLE: Senior Software Engineer II

START DATE: October 1999

END DATE: January 2001

WORK DESCRIPTION:

Recruited by Advanced Design Team to design, develop, and deliver distributed application framework for multi-tier application (Strobe for NT/Unix). Primary goals of framework were to provide browser access to distributed servers providing end-users the ability to remotely schedule, measure, and analyze application performance. The framework consisted of three major components; the web, global, and measurement servers.

Took part in development of a proof-of-concept prototype, written in Java, to demonstrate that Java was a feasible technology to use. Prototype successfully demonstrated distributed communication between 3 machines using Java's Remote Method Invocation (RMI) class library. In addition, it demonstrated object serialization and communicated with a native process via a socket using a simple XML message protocol.

Responsible for creating a high-level design document that summarized each of the applications distributed components and their sub-components.

Wrote logic specifications for all server components

October 1999 - Compuware Corporation acquired Programart Corporation

COMPANY: Programart Corporation

TITLE: Senior Software Engineer II

START DATE: September 1999

END DATE: April 1998

WORK DESCRIPTION:

Recruited into Advanced Design Team to research and design future products and product enhancements. Participated on an 8-member design team responsible for reviewing specifications for all new Strobe and APMPower product features.

Wrote initial product specifications for Strobe Java Language Feature to provide Java application specific information when measuring Java applications compiled into native code using IBM's High Performance Java compiler (MVS).

Tasked with researching the collection of Visual Basic information for Strobe for NT/Unix project. Support for including VB symbols with application performance data was required to make the data more useful to the end-user. In addition, the collection engine needed to detect when Visual Basic libraries and OCXs were loaded into memory.

Designed and prototyped new feature for APMPower product enabling users to see top N Resource consumers in applications measured by Strobe. This enabled end-users to dramatically cut down on profile analysis and solve application performance problems much quicker.

TITLE: Senior Software Engineer II

START DATE: September 1997

END DATE: March 1998

WORK DESCRIPTION:

Lead engineer responsible for scheduling and planning of release specific work throughout the development life cycle.

Worked in a semi-management role to ensure that product release sizing efforts and initial function specifications matched the product requirements

Responsible for assigning work to team members

Assisted other engineers with development process

Tracked teams progress on a daily basis and reported to management committee once a week

Joined Design Council to review and inspect all initial function specifications, product wide

Trained new employees about the architecture and use of Strobe and APMPower products

Responsible for maintenance and new product feature support in applications written in C and providing ODBC database access.

TITLE: Senior Software Engineer I

START DATE: September 1994

END DATE: August 1997

WORK DESCRIPTION:

Lead engineer responsible for ongoing maintenance and new release functionality of PC-based APMPower product for OS/2 and Windows, mostly using C and Easel.

Played a critical role in porting APMPower product from OS/2 to Windows 3.1 particularly in the database access area. Database access was converted from imbedded static SQL to ODBC.

Responsible for all database related code to support Oracle, MS SQL Server, Sybase, DB2, and MS Access

Assisted in design, development, and maintenance of print engine for APMPower using C++ and MFC

Responsible for data reduction of data received from the mainframe and loading via ODBC to a relational database

Responsible for designing and rendering of Strobe report data for display by APMPower

TITLE: Software Engineer

START DATE: September 1991

END DATE: August 1994

WORK DESCRIPTION:

Developed and maintained COBOL and Assembler reporting applications for Programart's Strobe application performance product.

Tasked with writing new support to emit reporting data to a proprietary file format for use by Strobe's companion product, APMPower

Designed and developed new reports for analyzing performance data from applications written in COBOL, Fortran, SQL, Natural, CICS, etc.

Responsible for providing patches to COBOL and Assembler reporting modules for customer problems

September 1991 - Hired by Programart Corporation

COMPANY: Global Software, Inc.

TITLE: Software Engineer

START DATE: January 1985

END DATE: August 1991

WORK DESCRIPTION:

Maintained and developed new features for company products. I became proficient in COBOL and acquired some experience with the OS/370 assembly language, Job Control Language (JCL), DL/I, and SQL.

Responsible for maintenance and new functionality support for ISPF-panel driven front end to IMS DBDC and DATAMANAGER data dictionaries and a SQL workbench that generated SQL command syntax.

Continuing Education

Note: I am currently working on completing my Bachelor’s degree with a concentration in Computer Science of which I have completed all of the Computer Science course requirements.

Since 1995 Harvard University Extensions Cambridge MA

Distributed and Enterprise Computing (J2EE w/ Seam and Spring)

Web Applications with Ruby and Ruby on Rails

Web Design for Database Applications (PL/SQL Oracle) – main focus on database design

Distributed Programming in Java

Java Programming I and II

Web Development using XML

C Data Structures, C++, Windows Programming with MFC, Advanced Windows

Programming with ActiveX & COM (DCOM), Java Programming, Distributed Java Programming with Java and CORBA

Since 1991 Boston University Brookline MA

Vax Assembler, C Programming, C Data Structures, Windows SDK Programming, and Data Communications and Networking.



Contact this candidate