SYNOPSIS
·
Software Architect/Engineer, Computer System
Scientist, Technical Lead.
·
Significant record of improvements to
functionality, performance, reliability, usability and maintainability of
complex, highly concurrent, mission-critical systems.
·
Extensive experience in a variety of domain
areas including dynamic media content generation, web-enabled enterprise
applications, interactive television, bank transaction systems, grid computing,
real-time systems, scientific computing and medical instrumentation.
·
Demonstrated expertise in: design for
functional correctness; design for flexibility and maintainability; performance
analysis and optimization; parallel and distributed computation; fault-tolerant
algorithms and systems; analysis of multi-threaded and multi-process systems
for concurrency hazards and other synchronization issues; scientific and
numerical computation; and management of full-lifecycle development processes.
PROFESSIONAL HISTORY
Edge Technical
Associates LLC http://www.edge-technical.com
Narberth, PA 1999-2000, 2002-present
R&D Consultant, Principal Software Architect, Owner.
Responsible
for leading the operation of Edge's full-service software consultancy:
- Design, develop, release and support software
- Manage development
processes
- Product design and
project planning: work with clients to identify and understand
requirements, plan features, schedules and deliverables, etc.
- Participate with
clients in technical presentations, technical reviews, negotiations, and
other activities as needed.
- Corporate
Training: develop curricula and teach courses on general software
engineering topics (e.g. Java/OOP, software development processes, etc.)
as well as specific tools (e.g. Unix, Visual
Studio, Source Safe, etc.)
- SBIR grant
proposal writing
Projects include:
- (For
SevenEcho LLC) Responsible
for system architecture, software development, and current and
forward-looking product design of the Personal Media Director -- a highly
scalable system that delivers dynamically personalized multimedia content.
Also:
- Represented client through a
successful technical due diligence review.
- Developed the Personal Narrative
Toolkit, a standalone version of the Personal Media Director for use by
content developers.
- Attained
Microsoft ISV/Software Solutions Competency for the Personal Narrative
Toolkit.
- (For Liberate Technologies, Inc.) Redesigned
and enhanced layout engine of an Internet-over-television web browser (an
embedded application that runs on digital set-top boxes) to improve
display of images, tables, and text and bring it into compliance with HTML
4.01 standards.
- "Smart
building" energy technology development, including consultations,
system architecture refinement, and evaluation of 3rd-party components.
- Led a multi-organizational
team in development of WebSTARR,
a web-enabled ERP system for short-line railroads, for IntelliTrans LLC:
- Added
a workflow-centric, web-based (Java+JSP) user
interface to the legacy (“green-screen” AS/400 and RPG-based) STARR system.
- Led
multiple, intensive requirements engineering efforts to drive development
and stage deployment.
- Designed
overall system architecture and interfaces to existing programs, database
tables, EDI subsystems, and jobs.
- Systematically
improved application performance by restructuring API usage patterns and database
queries.
- Found
long-standing bugs in original system and coordinated their resolution.
- Instituted
processes for source control, build/release, and change management.
- Estimated
effort, analyzed risks, designed and maintained a phased project plan,
assigned resources, and managed team. Met multiple release deadlines
while ensuring excellent team response to user issues.
- Acted as
liaison between the main customer (Rail Management Corporation),
AS/400 developers and system operators at Montana Rail Link, the original
STARR system developers at the Paducah and
Louisville (P&L) Railway), and IBM Websphere/J2EE/IBM WebFacing
developers at IntelliTrans.
Liberate Technologies, Inc.
http://liberate.com/ (formerly MoreCom,
Inc.) 2000-2002
Senior Software Engineer, Video On Demand Server
Products:
- Led integration of all video-on-demand
server products with Liberate's Connect Suite product line: Integrated
installation, logging, configuration and operational management of new VOD
Gateway servers and server processes with Liberate platform APIs – developed
compatible Java and Perl interface libraries and associated configuration
and startup script templates. Integrated with existing source control,
build and release processes.
- Developed multithreaded, TCP socket-based
client for nCUBE asset metadata publisher protocol; developed a Java
library and API that flexibly maps XML asset metadata from nCUBE,
SeaChange, and other XML-based video metadata servers to VOD Gateway
parameters.
- Led server
development work on Vidéotron Health project, including identification and
elimination of concurrency hazards in a Liberate video streamer product.
- Researched JVMs
(Java Virtual Machines) for embedded systems, and taught an internal short
course on this topic.
- Actively
participated in Integrated Services Architecture (ISA) working group along
with representatives from Time-Warner Cable, nCUBE, SeaChange, Concurrent,
and other cable system operators and middleware vendors.
- Mentored junior
members of engineering staff.
- Analyzed new replication and failover
features for potential impact on system performance and business
continuity, resulting in several design and implementation refinements.
- Designed and
implemented ACID-safe, hard real-time transaction timeouts to safely
implement controlled failover events during long transactions.
- Designed and
implemented crash/recovery tests that led to the understanding and resolution
of several long-standing bugs. Repair of these bugs significantly improved
database recoverability after failure events.
- Identified and
eliminated concurrency hazards including race conditions, livelock, and out-of design operation during
"normal" system load peaks.
Villanova
University
http://www.csc.vill.edu
1996-1998
Assistant Professor, Department of Computing Sciences
and Consultant, NSF I/UCRC
Center
for Advanced
Communication
University
of Delaware
http://www.cis.udel.edu
1995-1996
Visiting Assistant Professor, Dept. of Computer and Information Science
Activities at Villanova and Delaware
include:
- Extensively
revised and taught graduate courses in Distributed Systems,
Object-Oriented Design and Programming, Discrete-Event Simulation and
Programming Languages.
- Taught undergraduate Algorithms and Data Structures courses in C,
C++ and Java.
- Led class-wide Rapid Application Development projects.
- Closely supervised many M.S. independent projects.
Carnegie Mellon
University http://www.scs.cmu.edu 1992-1995
Position: System Scientist, School
of Computer Science
Research project: "Distributed Computational System for
Environmental Modeling", a National Science Foundation High-Performance
Computing and Communications (HPCC) initiative Grand Challenge project:
- Parallelized the Urban-to-Regional
Multiscale Airshed air quality model.
- Developed a
variety of parallelization strategies for improving execution speed,
making use of task and data parallelism, network-optimized communication,
application-dependent data distribution, and pipelined I/O.
- Ported the model
to vector supercomputers, massively parallel processors, networks of
workstations, and wide-area heterogeneous combinations of these systems.
- Designed model verification
methods that led to quick identification and resolution of model errors
introduced during the restructuring process.
- Integrated the URM
Airshed model with the Geographic and Environmental Modeling System
(GEMS), a GUI database and simulation interface.
- Supervised staff
and undergraduate programmers and managed tight schedules.
- Achieved the highest regional air
quality model performance ever reported at that time.
PRIOR EXPERIENCE
Software, firmware, and analog
& digital hardware design, including real-time signal processing, medical
instrumentation, robotics, and real-time optical measurement systems.
PUBLICATIONS
EDUCATION
|
B.S.E
|
University
of Pennsylvania,
Dept. of Electrical Engineering
|
1981
|
|
M.S.
|
Rutgers
University,
Computer Science
|
1987
|
|
Ph.D.
|
Rutgers
University,
Electrical and Computer Engineering
|
1993
|
|
|
Research: Scalable communication,
fault-tolerant synchronization and programming language support for dynamic
distributed systems.
|
|
SYSTEMS, LANGUAGES, TECHNOLOGIES
|
Programming Languages
|
|
Java
/ J2EE / J2ME, C, C++, XML, Macromedia Flash MX,
Perl, Smalltalk, Eiffel, M/MUMPS, HTML, ADA, High-Performance FORTRAN (HPF, F90), Lisp, Pascal, Postscript, Prolog, RPG-IV, CL, and
others.
|
|
Scripting, build
|
|
Bourne
shell, bash, csh / tcsh, ant, make / Imake,
and others.
|
|
Assembly Languages
|
|
HP
(Compaq/DEC) Alpha AXP, HP RISC, IBM RS6000/PowerPC, Sun
SPARC, and others.
|
|
Web Application Platforms
|
|
Apache
Tomcat, IBM WebSphere,
and others.
|
|
Databases
|
|
MySQL,
IBM DB2/400, Sanchez GT.M (Mumps) highly parallel SMP database, and others.
|
|
IDEs
|
|
NetBeans,
Eclipse, Forte, Visual Studio, Visual C++, JBuilder, Visual Cafe, Flash MX,
Smalltalk-80, X-Windows, etc.
|
|
OS + Platforms
|
|
Windows
NT/2000/XP, SGI
(Cray) T90/T3E supercomputers, Scientific
Atlanta PowerTV.
Single and Multi-processor UNIX systems,
incl. Sun Solaris, IBM AIX, HP (Compaq/DEC) Tru64 UNIX
and OpenVMS, HPUX.
|
|
Inter-process communication
|
|
TCP/IP
socket-level programming, DCOM,
CORBA, shared memory (various), message-passing
(PVM/MPI), Linda, & others.
|
|
Source control
|
|
Perforce,
CVS, Visual SourceSafe, and others.
|
|
Miscellaneous
|
|
IBM
WebFacing
|
Copyright
2002-2004 Edward J. Segall.
All rights reserved. This document is expressly not in the public domain and
remains the sole property of the copyright owner. Modification or abbreviation
of this document without the knowledge, review, and express permission of the
copyright owner is strictly prohibited.