SYNOPSIS
|
|
Performance optimization |
Physical modeling/simulation |
Scientific/numerical computing |
|
Cloud/cluster/distributed/ |
Multithreaded/multi-process concurrency |
Phased development and integration |
|
Agile development |
Build/release processes |
Configuration management |
|
Fault-tolerant systems |
Rigorous testing |
Embedded systems |
Domain experience
includes: Environmental modeling, Geolocation, Global banking—
back-end processing, Interactive Television, Medical instrumentation, Personalized
content, Rail Transportation, Real-Time Video Processing, Video-On-Demand, Wireless
communications.
|
Ph.D. |
|
|
|
|
Research area: Scalable
communication, fault-tolerant
synchronization and programming
language support for dynamic
distributed and parallel systems.
|
|
|
M.S. |
|
|
|
B.S.E |
University of Pennsylvania, Electrical
Engineering |
|
R&D Consultant
Edge
Technical Associates LLC, 1999-2000, 2002-present
Projects for client Sarnoff Corporation, now SRI International (2010)
NOVA project: Real-Time WAAS Video Tracking
Performance evaluation tools
· Developed tool to generate track-oriented ViPER (Video Performance Evaluation
Resource) XML from the tracklet-oriented XML output
of NOVA, a real-time, wide-area,
multiple-target video tracking system. Output is compatible with ViPER-GT ground-truth authoring tool and NIST F4DE (Framework For Detection Evaluations). Started from a prototype developed by Sarnoff
staff. Used C++, STL, BOOST, MSXML.
· Developed and documented methods and workflows for
using these tools.
· Fixed bugs in real-time tracking system related to XML
generation. As part of this work, fixed a track/frame alignment bug in tracking
system by revising inter-thread and inter-process (MPI) communication (joint work with a staff member).
Field Exercise Support
· Proposed and demonstrated using MATLAB a novel
mechanism for scene-based Non-Uniformity Correction (NUC) of extinction
artifacts in a shutterless, segmented image sensor.
· Developed a tool (in awk) to select co-synchronous
video frames from asynchronous segmented camera arrays. Used this tool to
obtain usable video from samples that were available but unusable.
· Proposed & set up Linux-based CIFS (Samba) server to
work around speed limitations of Windows-based drivers that are available for
reading high-resolution video data from ext3 RAID file systems. Used this
server to make daily video drops from TNT10 field exercise available to team.
· Road marking for EA10 and OA/DT3 field exercises.
Other
· Ported tracker build environment to Windows XP x64.
As part of this work, found a fundamental
application design flaw that must be fixed before upgrading to latest
development tools, and that may be responsible for functional issues.
· Wrote road marking guide.
· Worked with other team members on a wide variety of
build issues, concurrency problems, memory issues, and other problems.
Projects for client TruePosition Inc. (10/2004-12/2009)
U-TDOA Location Processing—Accuracy improvements
· Improved 95th
percentile accuracy of TruePosition’s core
location technology by 10%.
·
Co-recipient
(with Chief Scientist and Senior Scientist) of TruePosition’s 2008 Invention of the Year award for
this work. (Only non-employee ever to receive this award.)
·
Used C (Visual Studio 2005) for the
programming portion of this work.
U-TDOA Location Processing—Reference selection
·
Led resolution of anomalous GSM reference selection metric values found in
testing.
Coop Generation (Selection of Demodulating and Cooperating Receivers)
Algorithms
·
Developed and verified coop generation
algorithms for Distributed Antenna Systems (DAS).
·
Invented, developed and verified
coop generation algorithms for UMTS
and other air interfaces that use selective combining.
·
Resolved long-standing result inconsistencies among Solaris, Linux and Windows builds
by revising core data structures. Developed tests that reproduced the
discrepancies and verified the fixes.
·
Used C++/STL for development (Visual Studio 2005 for coding and unit testing,
with gcc and
Sun Workshop for cross-platform
integration, testing and verification). Used Perl for generating test configurations, DOS scripting for testing,
and Excel for analysis & communication of results.
Real-time resource scheduling
·
Invented, developed and verified load- and fault-tolerant scheduling
method for LMUs (Location Measurement Units). Used C++/STL for development
(VS 2005 for coding and unit testing, gcc for cross-platform integration, testing and
verification), and MATLAB for
visualization of results.
CGI+TA and E-CID
location processing
·
System
engineering, software design and implementation for multiple features and
updates.
·
C++/VS 2005 (development, unit testing), gcc and bash scripting (cross-platform verification).
Simulation/Modeling
·
Improved Accuracy
Prediction tool speed by 50X and halved
memory footprint (made server farm obsolete). Improved robustness across
multiple platforms. This tool has been used to successfully engineer nationwide
networks and has brought in new business through proposal support.
As part of this work:
·
Ported to C++ a Java implementation of CBCA algorithm (fast cell-based polygon
containment); found and fixed day-1 bugs (carried over from the Java
implementation).
·
Using
encapsulation and inheritance, integrated the C++ implementation into a related
tool as a first step towards elimination of redundant code.
·
Made
numerous stability improvements, bug fixes and feature enhancements in both
tools.
·
Designed
and developed (in C++) a
domain-specific comparison tool for comparing related results, measuring their
differences and formatting the differences for visualization.
·
System
engineer and subject matter expert/internal consultant for accuracy prediction +
related tools. Developed baseline reference results, test configurations and
pass criteria for regression testing. Worked with QA department to address all
discrepancies over multiple major releases.
·
Used MS Visual C++ for development and
profiling (code is mix of C and C++), MapInfo for visualization, and DOS
for scripting unit level tests.
Configuration/build/release management
·
Improved
internal release process for library code that is incorporated into multiple
system components and standalone tools.
·
Managed and
performed release builds of those tools and release labeling of library code in
coordination with SMLC team, SCOUT team and Release Engineering (ClearCase, Perl).
·
Managed
branch/merge planning and implementation in coordination with TP CM lead;
managed transition of those tools and libraries from Base ClearCase to UCM and back while multiple concurrent major releases and
exploratory efforts were ongoing.
Standards
·
Contributed
to 3GPP UMTS standard TS 25.111 “Location
Measurement Unit (LMU) performance specification; User Equipment (UE)
positioning in UTRAN” via
RAN4 work items.
Projects for other
clients (3/2002-4/2005)
Scientific Computing Associates: Developed
distribution-ready Microsoft Visual Studio .NET port of Unix TCP Linda
parallel/distributed programming system (written in C) from Cygwin(GCC) / Windows prototype.
SevenEcho: Designed and developed core system architecture
and initial implementation of
Personal
Media Director – a highly scalable system that includes a lightweight Flash client API, Java servlets and JSP and MySQL
database, and Personal Narrative Toolkit (PNT), a lightweight version of the
PMT suitable for individual developer use and installed using the Nullsoft scriptable installer system (NSIS).
Attained Microsoft ISV/Software
Solutions Competency for the PNT.
Represented client through successful technical due diligence review.
IntelliTrans LLC (originally August Design, Inc.): Led multi-organization team converting STARR
legacy railroad ERP system from iSeries RPG to
workflow-centric, web-based (Java+JSP) interface. Led requirements
elicitation; designed system architecture; designed interfaces to existing programs, database tables, EDI subsystems, and jobs; systematically improved application performance; acted as liaison to primary customer, original STARR developers, and host site’s developers.
Used WebFacing tool, DB2/400.
Liberate Technologies: Redesigned and enhanced layout engine of set-top web browser (C/C++). Improved layout of images, tables, and text and
brought into compliance with HTML 4.01 standards.
Other: “Smart
building” energy technology development, including consultations, software/system
architecture design, and evaluation of 3rd-party components.
Previous employment
Senior
Software Engineer, Video-On-Demand (VOD) Server Products
Liberate
Technologies, Inc. (originally
MoreCom, Inc.) Horsham, PA
2000-2002
·
Led integration of all 3rd-party
VOD servers with Liberate's
Connect Suite product line. To streamline integration, wrapped in easily
reusable APIs the existing Java library
interface to operations management system and the existing Perl installation/configuration library. Also fixed several
long-standing regular expression bugs in installation/configuration utility
routines.
·
Developed
multithreaded, TCP socket-based Java client for nCUBE asset metadata publisher protocol; developed 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 video
clip server development for Vidéotron Health project
(C++).
·
Researched Java Virtual Machines for embedded systems and taught internal
short course.
·
Actively
participated in Integrated Services
Architecture (ISA) standards working group.
·
Mentored junior members of engineering staff.
Senior
Software Engineer, Greystone Group
Sanchez
Computer Associates, Inc. (now FIS), Malvern, PA 1998-1999
Database internals
development for proprietary GT.M parallel database engine (in C):
·
Analyzed new replication and failover
features for potential impact to system performance and business continuity, resulting in several design and implementation
refinements.
·
Designed and implemented ACID-safe, hard real-time transaction
timeouts to enable controlled failover during long transactions.
·
Identified and eliminated concurrency hazards including race conditions, livelock, etc.
·
Improved
system performance, reliability and behavior during exceptional conditions.
·
Designed
and implemented crash/recovery tests (in M/MUMPS and sh scripting) that led to the
understanding and resolution of several long-standing bugs. This significantly improved database
recoverability after failures.
Assistant
Professor, Department of Computing
Sciences and
Consultant, NSF I/UCRC Center for Advanced Communication
·
Taught undergraduate Algorithms and
Data Structures courses in C and
in Java.
· Revised, taught
graduate Distributed Systems, Object-Oriented Design and Programming.
·
Led class-wide Rapid Application
Development projects.
·
Closely supervised many M.S. independent projects.
Visiting Assistant Professor, Dept. of Computer and Information Science
University of Delaware
1995-1996
·
Revised and taught graduate Discrete-Event
Simulation and Programming Languages.
·
Taught undergraduate Algorithms
and Data Structures in C and in C++.
System Scientist
Carnegie Mellon
University School of Computer Science 1992-1995
Research project: "Distributed
Computational System for Environmental Modeling", an NSF High-Performance
Computing and Communications (HPCC) initiative Grand Challenge project:
·
Parallelized the Urban-to-Regional Multiscale Airshed air quality
model (in FORTRAN and C), using task and data parallelism, network-optimized communication, application-dependent data distribution, and pipelined I/O.
·
Ported model to vector
supercomputers, massively parallel
processors, workstation clusters,
and wide-area heterogeneous combinations
of these systems.
·
Designed model verification
methods that led to quick identification and resolution of errors.
·
Achieved highest regional air
quality model performance ever reported as of that time.
·
Supervised staff and undergraduate programmers and managed tight
schedules.
Software, firmware, and analog & digital hardware design, including
real-time signal processing, medical instrumentation, robotics, and real-time
optical measurement systems.
Recent:
·
Patent Applications No. 12/648,753 and 12/648,783, (filed Dec 2009),
both titled “Cooperating Receiver
Selection for UMTS Wireless Location”, with Simon Issakov and Rashidus S.
Mia.
·
Patent Application No. 12/346,146 (filed December 2008), “Method for Position Estimation Using
Generalized Error Distributions”. Inventors: Pete A. Boyer, Rashidus S.
Mia, and Edward J. Segall
(Awarded TruePosition 2008 Invention of
the Year).
·
TruePosition 3GPP RAN Working Group 4 contribution R4-070478, “Simulation Proposal for UTDOA LMU Performance”, Kobe Japan, May
2007, with Pete Boyer, Rashidus Mia, Ron Lefever.
·
TruePosition 3GPP RAN Working Group 4 contribution R4-070490, “Simulation Results for UTDOA LMU Performance”, Kobe Japan, May
2007, with Pete Boyer and Rashidus Mia.
Earlier:
Please see
http://www.edge-technical.com/esegall-publist.html
|
Programming Languages |
|
Java / J2EE / J2ME, JSP, C, C++, STL, XML, Adobe Flash, Perl, Smalltalk, Eiffel, MATLAB, M/MUMPS, HTML, ADA, High-Performance FORTRAN (HPF, F90), Lisp, Pascal, Postscript, Prolog, RPG-IV, CL, and
others. |
|
Scripting, build |
|
sh (Bourne shell), bash, csh / tcsh, awk, ant, make / Imake, and others. |
|
Assembly Languages |
|
HP (DEC) Alpha, HP RISC, IBM
RS6000/PowerPC, Sun SPARC,
others. |
|
Performance Tuning |
|
Intel VTune Performance Analyzer and other tools |
|
Web Application Platforms |
|
Apache Tomcat, IBM WebSphere, and others. |
|
Database access/Databases |
|
SQL, JDBC, MySQL, IBM DB2/400, Sanchez/FIS GT.M (Mumps)—a highly parallel SMP database, and others. |
|
IDEs |
|
Microsoft Visual C++, Eclipse, JBuilder, NetBeans, MATLAB, Flash MX, Smalltalk-80, X-Windows, etc. |
|
OS + Platforms |
|
Single and Multi-processor UNIX and Linux, incl. Sun Solaris, IBM AIX, HP (Compaq/DEC) Tru64 UNIX, RedHat Linux and Cygwin. Also OpenVMS, Windows, SGI (Cray)
T90/T3E supercomputers, Scientific
Atlanta PowerTV. |
|
Inter-process communication |
|
TCP/IP socket-level
programming, DCOM, CORBA, shared memory (various),
message-passing (PVM/MPI), Linda, & others. |
|
Source control |
|
ClearCase (Base and UCM), Perforce, CVS,
Visual SourceSafe. |
|
Visualization |
|
MapInfo, MatLab |
Copyright 2002-2010 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.