Post Job Free
Sign in

Software Engineer Sql Server

Location:
Cardiff By The Sea, CA, 92007
Posted:
March 09, 2010

Contact this candidate

Resume:

Shane Sarver

PO Box ***

Cardiff, CA *****

abntrm@r.postjobfree.com

OBJECTIVE To utilize “Design Patterns” in the development of distributed Java applications.

CERTIFICATION Sun Certified Enterprise Architect for J2EE Technology (in progress).

EDUCATION Bachelor of Science in Computer Science, Portland State University, Portland,

OR. June 1999. Major GPA: 3.51.

LANGUAGES Mandarin, Japanese, Spanish.

INTERESTS Physical fitness, bio-mechanics, Goju-ryu Karate-do.

Recognized as most valuable student of Northwest Karate Federation -- 1995.

Languages: Flex, Bash, Java, UML, XSLT, XSL-FO, XSL, XML Schema, XML, PERL,

SKILLS

C++, PL/SQL, C, SQL, JavaScript, HTML, SPARC Assembly, x86 Assembly.

Operating Systems: Linux, Solaris, Windows.

Databases: Oracle, MS SQL Server, MySQL, PostgreSQL.

Application Servers: JBoss, Oracle AS, Oracle Portal, OC4J, BroadVision, Orion.

Development Libraries: Cairngorm, J2SE, J2EE, J2ME, IONA Orbix, RogueWave

Tools.h++, GNU.

Development Tools: Flex Builder, Eclipse, Ant, XDoclet, MagicDraw, JBuilder,

JDeveloper, VisualUML, Make, Visio, Sun WorkShop, Vim, PVCS, CVS, Visual

SourceSafe, Rational Purify.

Java Technologies: Tapestry, Hibernate, Acegi, Hivemind, JAXB, Xerces, Xalan,

JUnit, JavaMail, Spring, Java Web Start, Log4J, RMI, EJB, Servlet, JSP, JMS, JAXP,

JAAS, JTA, JAF, JNDI, JFC, CORBA, Jini, JavaComm, JNI, Java Print Service, Swing,

AWT, JDOM, SwiftMQ, FOP, Portlet, iText, JFreeChart, Struts.

EXPERIENCE

Software Engineer. LPL Financial, San Diego, CA. (2/7/07 to 1/18/08)

Extended functionality of legacy financial system, www.lpl.com.

• Created custom JBoss J2EE business components to extend functionality of

legacy financial system and replace Oracle Forms. JAX-WS Web Services

were created to provide methods to create, read, update, and delete

(CRUD) business entities in an Oracle database. Flex and Cairngorm were

utilized to implement a Graphical User Interface (GUI) to interact with the

JAX-WS Web Services deployed on RedHat Linux.

• Sets of Oracle native array IN/OUT parameter types in Oracle PL/SQL stored

procedures were refactored into Oracle object collection types to enable

automatic transformation of n-level nested database entities to/from Java

object collections in the business tier. A persistent object base class that

heavily relied on reflection and implemented the oracle.sql.ORAData

interface

was created to automatically populate an instance of a derived Java object

with the result returned from a stored procedure call. Java objects

implementing the oracle.sql.ORAData interface could be translated

automatically to the corresponding Oracle object collection type.

• Oracle object collections were defined in XML Schema. The XML Schema

defined data validation constraints. An Ant task was used to generate the

Java persistent objects from the corresponding XML Schema definition. The

XML Schema describing the Java persistent objects was referenced within

the WSDL of a JAX-WS Web Service to validate XML input.

• Cactus test cases were implemented to provide automated testing of the

JAX-WS Web Services. JUnit assertions were used to validate expected

results from JAX-WS Web Service method invocations.

• Ant tasks were created to automate all build and deployment activities.

Enterprise Archives (EARs) were hot-deployed to a JBoss J2EE application

server over SSH. Compressed versioned distribution archives containing the

entire system, including third-party packages, were created by executing a

single Ant task. To ensure that versioned distributions were packaged with

files that were tagged release candidates under revision control, Ant tasks

were designed to checkout all software including third-party packages from

revision control, and then perform a build using the Ant XML build definition

file that was checked out from revision control to create all deliverables,

including documentation.

• Documentation generation was achieved through invoking a doclet Ant task

from within the JavaDoc Ant task to generate HTML with embedded UML to

describe the system architecture and API. The URLs in the generated

documentation referenced online documentation of all third-party packages

to provide comprehensive documentation of the entire system.

• A BASH script was created and packaged inside each versioned distribution

archive to completely automate installation of the entire system on a Unix

or Windows target.

• Trained Software Engineers how to: 1) Implement JAX-WS Web Services.

2) Use BASH shell to diagnose and fix system failures on RedHat Linux.

3) Administrate JBoss J2EE application server.

Software Engineer. Elchemy, La Jolla, CA. (7/10/06 to 11/01/06)

Created crime reporting system, www.elchemy.org.

• Designed and implemented secure web application to enable submission of

identity theft crime reports to San Diego Police Department. The generic

solution performed code generation to produce a "ready to run" system

from any given data model.

• XML Schema was used to represent the crime report data model. XML

Schema restrictions were used to ensure valid data format. The XML

Schema was translated into a Hibernate mapped JAXB relational persistence

model. XML sample report data was validated against the XML Schema.

• JUnit roundtrip test case was used to prove that the contents of a JAXB tree

persisted to a PostgreSQL database was equivalent to the original JAXB tree

that was populated with XML sample data.

• Each extended data type in the XML Schema included an attribute group of

optional enumeration attribute values. These attributes were included in the

XML sample data to enable declarative definition of Tapestry pages. A DOM

parser was implemented to evaluate the attribute values in the XML sample

data and generate Tapestry XML page definitions.

• Creation of custom Tapestry page handlers implemented in Java enabled

complete declarative creation of the application, and removed the need to

write any Java source code to extend the application. User entered data was

populated in JAXB tree XML nodes through Tapestry web form using OGNL

syntax. Custom Hivemind factories were implemented to create and

initialize session state objects from PostgreSQL database. The WAR was

deployed to a JBoss application server running as a service on Fedora Core

Linux.

• Ant was utilized for all build tasks. A doclet was invoked from within the

JavaDoc Ant task to generate HTML documentation with embedded UML to

describe the system.

Software Engineer. Verance, San Diego, CA. (3/25/05 to 6/16/05)

Created custom JBoss J2EE business components, www.verance.com.

• Designed and implemented administrative features of an application that

independently verified actual airplay of designated advertising or other

audio-visual content on a next-day basis across all major U.S. media

markets. Over-the-air broadcast, cable and satellite programs, and

campaign monitoring and verification were differentiated in the user

interface. Entity and Session EJBs within a Struts MVC framework were

deployed to an instance of a JBoss application server. Media program

delineators that were monitored were stored in an Oracle database.

• Modified log4j database handler to invoke Oracle stored procedure to persist

log entries to database. Created documentation that described appropriate

usage and integration of log4j within Struts components.

Software Engineer. VitalAssets, Escondido, CA. (1/17/03 to 5/10/04)

Created custom Oracle J2EE business components, www.vitalassets.com.

• Designed and implemented Java portlets to run on an instance of Oracle AS.

Oracle Portal configuration was performed to register these portlets to make

them viewable according to predefined security roles. PL/SQL stored

procedures were implemented to provide the portlets with an interface to an

Oracle database via JDBC. Data entry portlets were implemented using

Struts MVC framework to provide users with the ability to persist key

performance indicators about company growth to an Oracle database (RAC).

Charting portlets were implemented using JFreeChart to provide users with

a graphical representation of the data entered. A PDF converter portlet was

implemented using iText to construct a printable PDF document containing

the graphs rendered from all of the selected charting portlets displayed on a

Portal page.

• Designed and implemented a web-based database table browser using

Struts, and a combination of Stateful and Stateless Enterprise JavaBeans to

provide users with the ability to efficiently page through and view sections

of an arbitrarily chosen table in an Oracle database containing millions of

rows, without consuming an excessive amount of network bandwidth or

system memory. The core paging functionality of the implementation could

be easily integrated into existing web and GUI applications. XDoclet was

used to generate local and remote interfaces, and cached home lookup

utility objects.

• Designed an implemented Java Web Start enabled Customer Relationship

Management (CRM) system. JDBC and Borland data-aware objects were

extended to provide persistence layer to interact with tables and stored

procedures in an Oracle database.

• Trained Software Engineers how to integrate custom Java components.

• Created UML sequence, collaboration, use case, and class diagrams to

model J2EE systems.

Software Engineer. TeleCrime, Rancho Bernardo, CA. (6/15/01 to 1/11/02)

Extended functionality of crime reporting system, www.telecrime.com.

• Designed and implemented a remote printing system for the Los Angeles

Police Department. Crime reports pulled from an MS SQL Server database

were represented in XML and transported as JMS messages within a

message-driven bean architecture. The message queue destination utilized

XSLT with XSL-FO to render a PDF representation of the police report. The

Java Print Service was used to send the resultant police report to the

printer.

• Designed and implemented a web-based multi-user crime report template

creator to ensure consistent quality of generated reports. Administrative

level access granted permissions to create/edit custom HTML form

templates for specific types of crimes for multiple police agencies. User level

access granted permissions to fill out and display the contents of a

completed template. Submitted templates were verified to satisfy formatting

criteria by a servlet before being persisted to an MS SQL Server database

using an entity bean (CMP) instantiated in a JBoss application server. When

a template was requested, a servlet used JDOM to form an XML

representation of the template fields returned from an EJB. A controller

servlet was responsible for choosing the appropriate XSL stylesheet to use

in XSLT to dynamically generate HTML.

Software Engineer. CardioNow, Encinitas, CA. (9/1/00 to 4/6/01)

Extended functionality of medical image and information management system,

www.cardionow.com.

• Designed and implemented a system for logging distributed events. JMS

client acknowledgement mode was used to relay a successful commit of a

JDBC invoked stored procedure responsible for persisting an event to an MS

SQL Server database. In the case that acknowledgement failed, JDBC

transaction rollback was used to ensure that duplicate messages were not

archived. The JMS queue receiver contained an RMI enabled object to

enable dynamic modification of the message selector. An administration

Swing applet utilized a servlet bridge to view queued and archived

messages.

• Designed and implemented a tool for monitoring health of the multi-tier

distributed system. In the case that a severe event was detected,

JavaComm was used to send AT commands to a modem to page support.

JavaMail was used to send email notification to support. A Swing interface

displayed the results of pinging each hospital site. JNI was used to allow the

monitor to run as a Windows service.

• Designed and implemented a web crawler to create a keyword hyperlink

cross-reference index into the online help pages.

• Designed and implemented a command pattern framework for automated

EJB testing.

• Designed and implemented a Swing application that used EJB clients to

persist DICOM and patient files on CD to an MS SQL Server database.

• Provided Java instruction to QA and software engineers.

• Maintained Orion application server installations.

Software Engineer. Datalex/Sight & Sound Software, Portland, OR. (9/1/99 to

8/20/00)

Extended functionality of the American Airlines website, www.aa.com.

• Developed detailed design specifications for implementing C++ client/server

applications using IONA CORBA with Orbix 2.2.

• Implemented CORBA C++ client/server applications to retrieve customer

records from an Oracle 8 database and populate on a webpage using

BroadVision C++ objects and server-side JavaScript.

• Formed requirements specifications with American Airlines Interactive

Marketing group.

• Created portion of project plan which included detailed work breakdown and

project schedule.

• Implemented BroadVision C++ objects containing instances of CORBA

clients that communicate with SABRE reservation system to perform

booking transactions.

• Provided instruction to integrate newly hired engineers into the development

team.

• Maintain and troubleshoot BroadVision 3.0 - 4.1 installations.

Teaching Assistant. Oregon Center for Advanced Technology Education,

Beaverton, OR. (8/11/99 to 8/13/99) Provided individual instruction in the "Hands-

On Java for Professionals" course which covered the following topics:

• Classes and objects

• Java library concepts

• Compilation, execution, and Java environments

• Interfaces, exceptions, threads, and packages

• Fonts, colors, shapes

• Applets and applet lifecycle

• Events and interactivity

• AWT containers and components

• Java networking

• Sockets

• Client-server applications

Web Developer. ABC Technologies, Portland, OR. (9/97 to 10/97) Converted text

to HTML 2.0 using Vi text editor for activity-based information system provider's

virtual library. Required implementation of complex set of nested tables to

accomplish formatting goal.



Contact this candidate