Shyela Aberman                                         Seattle, Washington, 98103

                                                                                                                                                                  404-307-8067 (c) • shy@aberman.com

 

Software Architect

           Adept at translating business needs into a technical strategy

           Strong skills and experience in Java and related technologies

           Broad experience in C#, PHP, and other technologies

           Vigorous believer in agile, lightweight, and evolutionary development processes

           Published author with O'Reilly and Associates.

Key Skills

 

Java (J2SE)

6.5 years

J2EE

3 years

EJB (Entity & Session)

3 years

JMS

3 years

JDBC

4 years

JSPs/Servlets

4.5 years

SQL

8.5 years

XML

5 years

XSLT

1 year

n-Tier Design

5.5 years

Design Patterns

5 years

Extreme Programming

5 years

Unit Testing (JUnit, NUnit)

5.5 years

CVS

5 years

Serena Version Manager (PVCS)

1 year

Weblogic

3.5 years

PostgreSQL

1 year

Oracle

3 years

Microsoft SQL Server

3.5 years

Unix (Solaris, Linux)

4 years

Microsoft IIS

6 years

Apache Ant

4 years

C# / .NET Framework

6 months

Visual Basic (COM)

2 years

ASP / VBScript

2 years

Visual C++

1 year

MSMQ

6 months

JavaScript

2.5 years

PHP

1.5 year

Adobe Flash

1 year

 

Experience

 

Smilebox, Inc

Senior Developer    July, 2005-Present

 

Helped build and launch this Internet-based consumer service. Smilebox is a creative messaging service that combines greeting-style personal expression and photo sharing. The client application is implemented in Visual C++ and Adobe (formerly Macromedia) Flash. It communicates via SOAP and simple HTTP with a Java service utilizing Spring and Hibernate over a PostgreSQL database.

 

Worked with a highly collaborative, highly skilled team using intensively agile processes, such as pair programming, weekly release candidates, weekly and monthly planning at differentiated levels of granularity (milestones and iterations), “just enough” coding and design, weekly learning and rapid feedback rituals, diligent use of automated testing, continuous integration builds, constant presence of customers and customer proxies (program management), and process experimentation.

 

Agilysys, Inc

Senior Developer    June, 2004-July, 2005

 

Expanding the integration capabilities of Agilysys’ document management solution. The product suite provides indexing, searching, routing, notification, and related functionality. The suite was implemented with Visual Basic, for the user interface, and Visual C++ Win32 DLLs, for the core business and data access logic.

 

Added new programmer-friendly component interfaces for Java and COM delegating to the core DLLs. The Java wrapper used Java Native Interface (JNI) to access the DLLs and also provided a Remote Method Invocation (RMI) interface for network use. The COM wrapper used Visual Basic. Both wrappers required considerable additions to the core DLLs to support thread-safe operation.

 

Rebuilt the web-based client to use the COM wrapper. The legacy web client was a monolithic ASP design, and all business and data access logic was implemented in ASP (VBScript) and did not use the Win32 DLLs. The relevant ASP was replaced with calls to the COM wrapper. The remaining ASP was refactored to separate the display logic and user input processing logic into ASP files and VB components, respectively, as per the Model View Controller Version 2 pattern. The codebase was thoroughly reviewed and cleaned up. After phase 1 of the revision, the codebase was reduced from 107 files to 81, and from 19991 lines of code to 15548.

 

Managing the planning for the Phase 2 revisions to the web client. I am working with product management to document functional specifications that are technologically feasible. I have begun a technical strategy document highlighting and analyzing the qualities and capabilities that the web client will  need to be enterprise-ready.

 

Created Agilysys’ first source control branching process and am actively managing and evolving that process. Serena’s Version Manager (formerly PVCS) is used for version control, but the group did not use branching before I joined it. Business and technology needs have made branching essential, and I spearheaded its definition, implementation, and initial management. I have created a “just-good-enough” branching process that emphasized simplicity and minimal day-to-day changes. This allows the branching process to evolve as needed without extensive disruption.

 

Radiant Systems, Inc.

Software Architect    March, 2000-June, 2004

 

Entertainment Systems

July, 2003- June, 2004

 

Designed Radiant’s next generation movie theater solution. The solution integrated and updated existing applications—ticketing point of sale, food service point-of-sale, and multi-site enterprise management—and added a new site management application.

 

Part of the team responsible for cross-application functionality and overall system dataflow. Focused on transmitting point-of-sale data to site-level and enterprise (above site) back office applications. This uses a combination of raw TCP sockets and message queuing (Microsoft MSMQ) to communicate the data. C# components were developed to translate data from fixed-length format to XML format. XSLT templates were used to transform the XML for application-specific processing. Additional C# components did this processing and inserted the data into a Microsoft SQL Server database. Unit tests were created for all components.

 

Lodging Systems (Hoteltools)

 March, 2000-July, 2003

 

Designed and built a centrally-hosted hotel/motel Property Management System which offered front-desk, back-office, and advanced multi-site enterprise reporting and configuration.

 

Primary architect for enterprise security/structure model, configuration registry, in-memory application data caching module, and 2nd-generation read-only data access framework. Significant contributor to reporting module, inventory (room night) management, and guest/contact management. The n-tier system was J2EE-based, making use of EJB, JMS, and JSP/servlet technologies. Session EJBs encapsulated the core transactional logic, while entity EJBs handled create/update/delete operations and JDBC handled read-only queries. JMS was used to communicate with the hotel/motel sites. Business logic was invoked by JSPs, which were in turn called by the DHTML/JavaScript front-end. All data was formatted in XML. Reports were formatted by XSLT templates into PDF documents. Unit tests were created for core components.

 

The system was built for BEA Weblogic 5.1.0 and was ported to the JBoss 3.2 application server. Ran on Sun Solaris 7, Redhat Linux 7.3, and Windows. The database server was Oracle 8i, running on Sun Solaris 7.

 

Helped create a highly adaptable software development process based on Extreme Programming. The process featured iterations of two to four weeks, daily or more frequent builds into an integration environment, and frequent branching and merging to support simultaneous development. The build system used Ant, CVS, and other open source tools and performed scheduled and as-requested builds.

 

USWeb/CKS

Software Architect    January, 1998-March, 2000

 

Implemented development projects for a variety of clients. Project types included sales automation systems, ecommerce systems, and informational web sites. Responsible for technical side of requirements, risk management, and communication.

 

Development was performed with either ASP with Visual Basic COM components (75%) or Java Servlets (25%). Projects requiring a database server used Microsoft SQL Server.

 

Virtual Resources, Inc.

Website/Database Programmer    January, 1997-December, 1997

 

Implemented development projects for a variety of clients. Project types included ecommerce systems and informational web sites.

 

Development was performed with C/C++ CGI executables (85%) or Java Servlets (15%). Projects requiring a database server used Oracle 7.x or MiniSQL.

 

Cadmus Interactive, Inc.

Website/Intranet Developer    August, 1995-January, 1997

 

Implemented development projects for a variety of clients. Project types included ecommerce systems and informational web sites.

 

Development was performed with C/C++ CGI executables. Projects requiring database functionality used Oracle 7.x, MiniSQL, or dBase files.

 

Authorship and Presentation

 

           Co-wrote “EJB Design in the Real World” chapter to Enterprise JavaBeans, 4th Edition (Est. April, 2004). O’Reilly.

 

           Security Presentation (General and network security), Atlanta chapter of the Hospitality Financial and Technology Professionals. 19 February, 2003.

 

Education

 

Completing a Bachelor of Science in Computer Science.

           Georgia Perimeter College    Fall, 2003-Present

           Southern Polytechnic State University    Fall, 1996-Spring, 1997

           Dekalb Community College    Fall, 1995-Summer, 1996

           Emory University    Fall, 1991-Spring, 1994