Mary-Anne G. Wolf
North
Billerica,
MA
01862
(978)
663-0241
mgwmgw@comcast.net
SUMMARY
Software professional with MSCS and a breadth of technical experience including: product architecture, product development, prototyping, automated test, performance analysis, and software devops (including AWS) seeking a technical lead or senior/principal engineer role to help make your visions become real, reliable, and better than before.
TECHNICAL SUMMARY
Languages: Python, Perl, Java, SQL, JavaScript (Angular.js), HTML, PHP, Arduino.
Software: Jira, Nagios, Perforce, Express, Subversion/SVN, Git, Swing, CVS, Lucene, JavaCC, Confluence Wiki (Swizzle API), Primavera Integration API, Oracle 10g and 11i, Bugzilla,
Concepts: Agile (multiple variants), Design Patterns, Refactoring (enhance code I did not write).
Platforms: Linux (Kubuntu, SLES, RHEL, Debian), OSX (10.4, 10.6, 10.8, 10.10, 10.11),
Windows (7, XP, 2000), UNIX (IRIX, AIX), Arduino.
EXPERIENCE
Start Up Ventures 8/15 to Present
GlassCry Software
Exploring an idea for new medical record analysis software to detect unwanted side effects of drug combinations. Identified federally supplied anonymized medical records to be used as initial test data. Currently exploring supportive technologies.
Game design, differentiator definition, and software architecture of a word game minimum viable product, using Java 8, a RESTful API using JSON from PostgreSQL 9.4, on Eclipse Mars, with a Tomcat 7 server and a web browser client (JavaScript and HTML5).
Strategy and Design Solutions
Intermittent
work on projects related to crypto-currency and system integration
for Strategy and Design Solutions. Helped debug a prototype. This
could become full-time as funding becomes available.
Permabit, Cambridge MA 12/12 - 8/15
Senior Software Engineer in DevOps, 10/14 - 8/15
Moved to DevOps due to company's needs and backlog. Created data model and web front end proof of concept for internal, web based asset management tool using postgresql, SQL, PHP, HTML, JavaScript, angular.js, express (RESTful API). Researched paid and cost-free asset management software, most recently a Jira plugin.
Debugged and refactored AWS related Python scripts built on BOTO and EC2 command line. Refactored, debugged and extended our Nagios monitoring configuration including Perl and Python scripts and FAI deployment.
Code reviews of Perl, Python and bash scripts and configuration files. Wrote Expect (tcl) script to enable and disable ethernet and ipmi switchports on TigerStack II switches, and wrapped the script in Perl command-line processing.
Used ssh API, curl web scraping. Improved our jira workflow. Wroeting and changed related Perl and Python scripts.
Performed manual and scripted release testing of storage optimization product, including use of sg3_utils on VAAI primitives. Primarily on RHEL6.x and Ubuntu precise with xen. Also Debian squeeze and RHEL7.x.
Senior Software Engineer in Test, 12/12 to 10/14
Wrote, refactored, and enhanced Perl scripts to automatically test product code primarily written in C and Python. Product set allows deduplication, compression, and other storage efficiency in block storage devices. Multiple Linuxes: Ubuntu (Precise Pangolin, Raring Ringtail, Trusty Tahr), Suse(SLES11SP2, SLES11SP3), Redhat(RHEL6, RHEL 6.5), Debian(squeeze, wheezy 3.9 and 3.10 backport). Mostly virtual machines on Xen. Local, distributed and Amazon cloud based tests.
Wrote parallel Perl, complex Perl scripts to reproduce and discover bugs.
Designed, ran, analyzed, and graphed performance tests.
Reviewed data visualization products for internal use. Used: LVM2, fio, dm_setup, dm_thin, inetd, fsys, mdadm, Jira, Perforce (P4), emacs, CPAN. Agile process: performed code reviews, wrote stories, added acceptance criteria.
Analyzed test coverage including tests written by others, determining whether the testing is sufficient for product release
Found issues in technical documentation
Participated in weekly project planning meetings
Wrote relational database performance test instructions for off-shore team.
One of the two people responsible for daily bug triage.
E-Dialog (subsidiary of Ebay), Burlington MA 4/12 to 6/12
Principal Software Engineer
Java 6 and 7 software development on Windows 7 and Kubuntu (Linux). Part of the Merger team to insert custom information into marketing email templates.
Designed and prototype the third version of the archiving system, transformed from Perl to Java, which moved files from local to NFS mounted disk and compressed and tarred the files to save disk space. Agile Scrum Software Process. 2 week sprints. Eclipse IDE, Subversion, Jira, Java 6/7 (including Executors, ThreadPools and Callables), Synergy, Camel, Gzip, GNU tar, ant as Java utilities, Apache Commons Configurations, JMS, ActiveMQ, Spring, Jackson (JSON parsing), Eclipse (Indigo), Oracle, research of Amon and GlassFish.
Logica, Waltham MA 5/11 to 1/12
Senior Technical Analyst
Technical lead/liaison of a multinational financial software integration team. Financial messaging gateway written in Java 6 using Spring and Hibernate, annotations and XML, developed on Windows 7 using Eclipse and Maven, to be delivered on HP NonStop (Tandem) and SQL/MX database.
Architected and authored design documents to specify the requirements and the work for a software development team in India, which I helped to hire and mentor. Code inspection. Evaluation of test plans. Troubleshot customer issues, including database locking and performance. Transaction tracing. Remote memory monitoring (HPJMeter). JMX. Defining relationships among database tables. Writing Java involving dozens of threads.
Consulting Positions 8/09 to 3/11
Java Developer (Contractor)
For
Harvard Pilgrim
Health
Insurance through
Insight Global,
Wellesley MA
Developed
Web
Services
(SOA)
for
counters
and
monthly
member
statements
in
Harvard
Pilgrim
Health
insurance
using
Java
5
and
6,
TIBCO,
WSDL,
Hibernate,
Spring,
Maven/mvn,
Lotus
Notes,
Sametime,
Subversion/SVN,
Windows,
Oracle
(PL/SQL)
11.2,
Eclipse
IDE,
junit,
jmock,
Rally
(stories).
Followed
HIPAA
compliance
and
Agile
development.
Performed
Java
memory
analysis
to
solve
scaling
problem.
Replaced
data
persistence
layer
(DAOs).
Brown University, Providence RI
Evaluated software development tool research at Brown University and consulted on the usefulness of proposed software tools in technology industry context.
MOCA Systems, Westford MA 1/08 to 7/09
Senior Software Engineer
Java 6 (Swing, Swingx) on SUSE Linux with a little Windows XP in a vmware slice. End users ran on Windows using Citrix. Eclipse IDE. CVS.
User interface design and development, multi-threading, requirements gathering, accessing an Oracle 10g relational database using JDO. checking the database content using SQL, data integration using the Primavera Integration (P6) API. The application, MOCA's third release, used simulation to anticipate issues and reduce costs in large Construction and other Civil Engineering projects. Agile SCRUM process.
IBM (Lotus), Westford MA 8/97 to 11/07
Advisory Software Engineer for Lotus Connections Projects, 6/07 to 11/07
Designed and wrote Java 5 on Windows XP using swizzle on RPCXML to access information in Confluence Wiki, and translate information into DITA format. Regular expressions, DOM Documents, XML manipulation, XSLT. Suggested new requirements for next generation documentation software.
Advisory Software Engineer, WebSphere Portal Projects, 4/06 to 6/07
Software development for the WebSphere Portal Consumability Team, whose goal was to reduce IBM support costs after customers deploy the Portal product.
As part of U.S./Canada, cross-divisional team, design and develop Java tool for extracting formatted text problem description data from CMVC (relational database based source control and defect tracking tool) and SPR (software problem report tracking Notes database) into XML files using EMF to create the output. Java development. JDK 1.4.2 using Eclipse IDE and junit tests. Wrote XML schema; used DOM parse on XML configuration data.
Lead Service Agent Workgroup team to facilitate collaboration among about half a dozen cross-divisional departments regarding requirements analysis of cross product components for log translation, collection, and analysis in context of customer software problem diagnosis.
Prototyped enhancement to command-line showlog log format transformation tool for WebSphere Application Server in JDK 1.3.
Custom ant tags in Java and ant for gathering data to diagnose Portal problems.
Tech. Lead Serviceability Team. Statistical customer problem analysis. Portal 6.02, 6.1. Wrote line items, design docs, change requests. Test, translation plans.
Wrote Lotus Notes and CMVC API based tool in JDK 1.4, 1.5, LotusScript, and Notes Formula Language, facilitating editing of Portal’s error messages.
Advisory Software Engineer, Lotus Workplace Projects, 2/03 to 4/06
System administration software development for IBM Lotus Workplace (LWP, WebSphere Collaborative Services, WCS) version 1.1, 2.0, 2.5, 2.5.1, 2.6, and parallel Express offerings (small business), also in WebSphere Portal 6.0 and 6.1. Requirements gathering, writing and review of design documents and code, maintenance, customer hot fixes, training support and sales force, presentations to management and customers. Also did level 3 support for most of Lotus Workplace code. Working with UI designers, marketing.
Developed/tested on Windows XP, 2000, and Linux. Released on multiple UNIX and proprietary operating systems. Needed to work with Cloudscape, DB2, Oracle, SQL Server, relational databases.
Technical lead, developer, for license management.
Developer, architect and technical lead (2 to 6 people) for policy management, developers located in Massachusetts, Germany, India, and North Carolina. Initial version used JDBC and SQL to store policies in DB2, Cloudscape, and Oracle relational databases. Complete rewrite imported XML files using SAX parser and stored data in JCR (Java Content Repository).Design/develop Websphere console extensions using Java (JDK 1.3, JDK 1.4, J2EE), Struts, Tiles, XML, JDBC, SQL, changing database schema.
Principal/Advisory Software Engineer, Performance Analysis & Tools Projects, 8/97 to 2/03
Performance analysis for large customers implemented user simulation software with combinations of IBM/Lotus products preparatory to large deployments. Also software for data mining within performance results. Supplied software to support. Produced requirements, designed, coded, released software. Technical leader of 2-6 people.
Java
1.1,
1.3,
1.4.
Advanced
Swing.
DOM
parse
of
XML
exported
from
Domino.
Reviewed
C++
code.
Ksh,
Loadrunner,
and
Perl
scripts.
LDAP.
A
little
SAS.
Windows
2000,
NT.
DB2.
Simulated 100,000 users (via socket) of Lotus instant messaging product. Java 1.3. Distributed architecture. 5 kinds of machines, 2 kinds of driver.
Component for analyzing semaphore timeouts of Domino servers.
Program to parse RIP files created by Domino crashes
Modified program to find patterns in RPC traffic so it also analyzes IMAP4, SMTP, POP3, other protocols. Refactored for DB2 table redesign. Modified matching algorithm. Wrote Perl script to generate SQL and used Excel for data mining of how algorithm change alters results.
Integration of survey data. With Java, parsed web content accessed via structured URL connecting to Perl CGI script that accessed a relational database, and combined result with data from Notes/Domino databases. Domino view design.
JavaPlus speaker: "Avoiding Non-portable Java" October 30, 2000, San Jose, CA.
MITRE, Bedford MA 2/93 to 8/97
Software Applications Development Engineer, 8/95 to 8/97
Data modeling, software selection, technical analysis. Implemented o combinations of NT, Solaris, Macintosh
Java 1.0.2 applets and applications using awt GUI.
Perl CGI scripts that generated browser specific HTML
JDBC-ODBC bridge to MSAccess 2.0 using application/applet socket where both client and server had multiple threads. SunOS 4.1.3 and Windows NT.
Developed data conflict tools and other programs in Visual Basic for Excel 5 on NT and Mac.
Member of the Technical Staff, 2/93 to 8/95
Provided architecture and design, ui design, detailed design and implementation of high fidelity prototypes in C++ and Motif on SunOS 4.1.3 and Windows 3.1.
Palette Systems, Nashua NH 4/92 to 10/92
Senior Software Engineer/Project Leader.
Team Leader of as many as 6 engineers that ported EWIEDIT, a hypertext authoring product from X11, C, and Fortran to C, UIL and Motif, on VMS 5.4.
Wrote functional specs and design docs.
Designed user interface. Defined UIL coding standards.
Bull (Honeywell), Billerica MA 9/87-3/92
Senior Software Engineer, 9/89-3/92
Designed, developed, tested, ported, internationalized and enhanced, integrated applications in combinations of C, UIL, Motif, X11 and shell-scripts on SCO, MIPS RISC, HPUX (HP9000).
Liaison with 3rd party vendors, support, marketing. Usability testing.
Software Engineer, 9/87-9/89
Development of a new secure multi-user operating system, inspired by Multics.
Debugged, enhanced intermediate language modules of ANSI C compiler.
Member of Bull committee that reviewed what became Motif.
Ported and developed C programs and shell scripts on UNIX System V.3.
EDUCATION
University of Massachusetts at Amherst
M.Sc., Computer and Information Science
Yale University, New Haven, CT
B.Sc.,
Computer
Science
and
Psychology