Daniel S. Barclay
Reston, VA
OBJECTIVE:
Software development position using, and, ideally, creating, leading-edge Semantic Web, rich web, and other XML and Internet technologies in a collaborative team environment.
SUMMARY:
Senior Java software developer focused on web applications, web services, XML technologies, and the semantic web, with 10 years of Java experience, preceded by C and C++ product development experience in the electronic design automation industry.
EXPERIENCE:
| Global InfoTek, Inc. Reston, VA |
Senior Software Engineer |
Mar. 2011 - present |
ETL, Text Indexing:
- Developed data-extraction modules for multi-feed data-consolidation
and geospatial-visualization system for government client:
- On data-ingest team, used Java, XML schema and configuration
files (read using JAXB), and SQL to implement extraction from
multiple data formats (RSS, Excel, HTML) and ingestion into
central Oracle database.
- Also investigated Twister and Lucene/Solr indexing.
| FGM, Inc.; Reston, VA |
Software and Systems Engineer |
Feb. 2003 - Jan. 2011 |
Web Services, Service Discovery/SOA, Security:
- Supported web service discovery and governance implementation using HP SOA Systinet: Investigated service data model and customization options. Wrote WDSL files and UDDI tModels. Generated taxonomy files using XSLT. Installed and configured JBoss, Oracle, and SQL Server.
- Supported DoD Net-Centric Enterprise Services (NCES) web service discovery implementation:
- Created UDDI tModels for service categorizations. Guided coding of taxonomies in OWL.
- Documented mapping of NCES-specific service metadata to UDDI constructs.
- Reworked and clarified example Java client for UDDI inquiry API (SOAP web service).
- Configured DataPower XML firewall for LDAP-based retrieval of certificate revocation lists for multiple certificate authorities; used OpenSSL and OpenLDAP.
- Analyzed security technologies for NCES Information Assurance Architecture: PKI and SSL; XML Encryption, XML Signature, and XML Canonicalization; and SAML, XACML, cross-domain single sign-on (CDSSO), and WS-Security.
- Developed XML-mediation demo web service in Java using WebLogic and Axis; wrote WSDL.
Web Applications, Usability:
- Re-designed and implemented user workflow of XML schema registration feature of DoD Metadata Registry J2EE web application: Designed web page flow. Implemented in Java, WebLogic Portal, JSPs, HTML, and CSS. Eliminated previously manual steps and avoided limited viability of planned solution (Java application download and run locally).
- Overhauled schema ingester of Metadata Registry web application: Refactored, corrected, and extended Java code, to handle more schema constructs and correct for JaxMe schema parser API inconsistencies. Annotated output with source line numbers for usability. Resulted in more usable, complete, and maintainable ingester (and bonus for avoiding temptation to re-write from scratch).
- Performed problem-solving such as combining knowledge of various technologies (HTTP keep-alive and caching, SSL, TCP, LiveHeaders tool) to diagnose web application performance problem and implement interim solution (Java wrapper servlet setting HTTP headers).
Semantic Web, Resource Metadata:
- Envisioned and created demonstration of using Semantic Web technologies to link web service metadata from different sources (XML schema registry RDB and web service WSDL files): Modeled schema and service objects using RDFS and OWL. Extracted RDF triples from schema data dump and WSDL using XSLT. Implemented entailment using Cwm; converted N3 to RDF/XML. Supported development of Siderean Seamark Navigator queries and rendering.
- Helped develop RDF/XML-compatible XML format for describing data resources as key participant in DoD Discovery Metadata Standard Focus Group: Researched RDF, RDFS, RDF/XML, and Dublin Core (DCMI) terms. Guided group to structure XML format to follow RDF/XML striping. Co-wrote XML Schema.
- Investigated semantic web technologies for DoD upper ontology and situational awareness calendar projects: Researched RDF, RDFS, and OWL in depth; also WordNet, Topic Maps, Cyc time- and event-related items, RDF iCalendar, Protégé editor.
Complex Event Processing:
- Developed query flow for detection filtering system using Coral8 complex-event-processing (CEP) engine: Wrote SQL-like CCL queries to combine data from adapters for disparate data sources, rank events, and emit event notifications. Wrote adapters in Java. Generated Google Earth KML using XSLT.
Other XSLT, XML Schema, XML:
- Overhauled XSL-FO-based report generator of import/export tracking and decision-support system: Reworked XSLT transforms. Refined and documented XML report-specification language, resulting in easier follow-on maintenance. Wrote Java and XSLT to add new report-language features and new reports.
- Developed schema-processing tools for missile defense XML message schema development: Wrote XSLT to automatically transform schema files directly into tabular data dictionary (HTML, MS Word). Guided writing of scripts to generate other schema files from data modeled in requirements management system, automating creating data dictionary plus maintaining traceability. Also provided data-modeling and architectural guidance regarding use of XML Schema and XML.
- Implemented XML-aware signing (per XML Signature) and encryption in cross-security-domain guard: Used Java Cryptography Architecture API and PKI/certificate tools. Also, analyzed XML Schema specification to determine core schema-and-instance co-traversal algorithm needed for validation.
Other Activities:
- Presented in-house talks (e.g., new Java features, XML Schema, Semantic Web, web HCI).
| Fannie Mae; Herndon, VA |
Contractor (via IQuest Solutions) |
Sept. 2002 - Jan. 2003 |
Requirements Analysis, Business Object Modeling:
- Analyzed business requirements for security-trading tracking and accounting system: Modeled domain objects in UML using Rational Rose plus hyperlinked Word text. Documented use cases.
| Mercator Software, Inc.; Reston, VA |
Lead Software Engineer |
Jan. 2002 - July 2002 |
Enterprise Application Integration (EAI) Product Development:
- Analyzed legacy C/C++ application integration broker for re-development in Java: Modeled objects and use cases in UML. Validated multi-threaded triggering and control algorithms in Java.
| Digital Focus, Inc.; Herndon, VA |
Software Architect |
Dec. 1997 - Aug. 2001 |
Web Applications:
- Developed J2EE medical credentialing web application using servlets, JSPs, and EJBs: Created common HTML table- and form-generation and data-validation utility, reducing servlet development effort. Designed REST-style URL hierarchy and dispatcher servlet. Created servlet base classes for common protection domains and page navigation.
- Added security realm provider interface to J2EE reference implementation), to enable development on RI of web applications to be deployed on WebLogic.
- Analyzed J2EE compliance of CRM web application code; identified WebLogic-Server-specific code to target to improve portability.
- Created employee directory web application exposing LDAP data: wrote servlet, deployed Tomcat.
- Created web-application project template to reduce project startup time and cost: Created Ant build script; defined directory structures. Supported WebLogic and J2EE RI; Windows and Unix/Linux.
Web Services, XSLT:
- Created web interface for SOAP web service interface of investment calculation engine: Wrote controller Java servlets. Generated HTML directly from SOAP XML using XSLT. Resulted in follow-on contracts.
GUI Development:
- Created end-user-configurable loan document generator for commercial lending application. Extended Java Swing text classes to add conditional and data-insertion constructs to create WYSIWYG editor for document templates. Generated documents from templates plus loan data. Designed metadata-driven interface, avoiding dependency on loan data schema.
| Compass Design Automation; Columbia, MD |
Staff Software Engineer |
Jan. 1987 - Sept. 1997 |
Electronic Design Automation (EDA) Product Development:
- Led team developing purpose-specific, OO-style database system in C for storing parsed VHDL (hardware description language) descriptions of circuit designs: Developed system API and internal data structures and algorithms. Implemented data subclassing in C by generating code. Wrote tool-integrator and end-user documentation. Provided pre- and post-sales technical support; produced and shipped releases. Resulted in core product generating revenue for 10 years.
- Designed and implemented VHDL simulator extension kit product: Designed simulation kernel API and mapping from VHDL to C code calling kernel API. Wrote C code generator and kernel reference implementation (in C). Wrote kernel API documentation.
- Re-designed C intermediate representation of VHDL: Reduced memory size by factor of 6, enabling 7x speed increase and second-generation sales. Simplified interface for client code. Created conversion-support library, with detailed instructions, to allow incremental conversion of legacy client code, resulting in retaining customers.
- Designed intermediate representation of Verilog HDL; used custom HTML tags to generate richly linked documentation.
- Developed formal verification tool GUI using Galaxy C++.
- Actively participated in IEEE VHDL standard interpretation and revision committee.
- Taught commercial VHDL courses for circuit modelers.
EDUCATION:
M.S., Electrical Engineering; March 1987; Virginia Tech; Blacksburg, VA.
Thesis: An Automatic Test Generation Method for Chip-Level Circuit Descriptions. (Used Prolog.)
B.S., Electrical Engineering with Computer Science minor, Magna Cum Laude; June 1984; Virginia Tech; Blacksburg, VA.
CERTIFICATIONS, CONTINUING EDUCATION:
Sun Certified Programmer for the Java 2 Platform, 2001.
Attended 2009 Semantic Technology conference. Attend Northern Virginia Software Symposium.
PROFESSIONAL ACTIVITIES, AFFILIATIONS, AND PUBLICATIONS:
Institute of Electrical and Electronics Engineers (IEEE).
Northern Virginia Java User's Group (NoVaJUG), Northern Virginia Ruby User's Group (NoVaRUG), Washington Semantic Web Meetup.
Pre-publication technical reviewer of Core J2EE Patterns, by Alur, Krupi, and Malks.
"A Kernel-Level VHDL Simulation Interface," presented at spring VHDL Int'l. User Forum (VIUF), 1990.
"A Heuristic Chip-Level Test Generation Algorithm," Daniel Barclay and James Armstrong, Proceedings of 23rd Design Automation Conference, 1986.
L2011-07-25Cpuh