Abstract
In my careers at Motorola and Qualcomm, I've had the privilege of working on several projects that were industry
firsts. These challenges fostered innovations that are still unique to their respective companies' products and processes.
At Motorola, my experience in the embedded space primarily covered user interface design and programmable platform development
(Java ME MIDP, AJAX, Flash). However, my interests in XML and web technologies led me to create crossover projects ranging from
web tools for process improvements to research into a completely new Mobile Web Application Framework. It eventually led to a
Computer Science Masters Degree with a specialization in Web and Internet Programming. As my career shifted from mobile to the
data center, I focused more on compilers starting with static compilers such as Clang/LLVM and moving to dynamic compilers
like Dalvik and Facebook's HHVM. Eventually, my enthusiasm for multimedia and computer graphics led to the pursuit of another
degree. As a part time Ph.D. candidate at the University of North Carolina at Chapel Hill, my research has focused on a new
display interface abstraction to replace the framebuffer.
Objective. To work in a technical lead software engineering position with a Fortune 100 company leveraging my experience and knowledge of high efficiency computing for high performance applications. Ideally, the position would be a hybrid, balancing multiple facets of engineering: research, architecture, design, mentoring, management, and deep problem solving.
- Ported Facebook's HHVM (runtime, interpreter, and JIT compiler) to AArch64.
- Lead the team in our profiling and optimizing of HHVM for Centriq 2400.
- Built a continual integration system (Jenkins plus custom MEAN webapp) which tested, benchmarked, and profiled HHVM in order to track performance trends.
- Represented Qualcomm Datacenter Technologies Inc. as the HHVM community liason.
- Contributed optimizations to Android's Dalvik VM JIT Compiler.
- Designed the code cache for a high performance Dalvik JIT Compiler replacement.
- Implemented deopt for a high performance Dalvik JIT Compiler replacement, allowing for punting and recompiling of very large and deepling inlined compilation units.
- Delivered advanced Machine Models to the LLVM Machine Scheduler for the ARM Cortex-A53, ARM Cortex-A57, and Qualcomm Kryo CPUs.
- Optimized the Tamarin ActionScript virtual machine for ARM Cortex A8.
- Contributed heavily to the Flash 10 plugin for Mozilla/Linux for first the World's first Smartbooks.
- Reviewed and pushed numerous Linux kernel patches to Code Aurora Forum.
- Developed an Adobe Flashlight plugin for Mozilla/Linux for Snapdragon processors.
- Contributed to the bring-up effort of various Linux distributions on Snapdragon hardware.
- Designed advanced Java Feature to handle display re-orientation.
- Integrated Aplix's JBlend Java Platform.
- Integrated OMA 1.0 DRM for WiMAX.
- Architected, designed, and implemented AGLX, a functioning prototype of a complete, xml-based documentation management tool used for authoring, viewing, reviewing, editing, reporting, and version control of software development documentation.
- Led the AGLX team through an Agile Software Development Process (Scrum, Modified XP - Extreme Programming).
- Architected, designed, and implemented Motorola's first Java Application Management Software (AMS) for a MIDP device.
- Designed and implemented the 2D Raster Graphics Library for the Java Platform.
- Developed prototype handset for JavaOne which was featured in a keynote presentation as well as Motorola's first J2ME Developers Contest.
- Shipped the World's first MIDP 1.0 compliant device (iDEN i85 Handset).
- Enhanced Java AMS to support multiple, concurrently running MIDlets.
- Shipped World's first MIDP Device capable of running multiple MIDlets (MVM) concurrently (iDEN i730 Handset).
- Specified, architected, designed, and implemented the Helper MIDlet Framework (HMF), a Motorola Proprietary API similar to the later Standard: JSR 211 (CHAPI).
- Created a custom API for a Text-to-Speech (TTS) prototype.
- Prototyped JSR 184 (3D for MIDP) using HI Corp's Mobile 3D Engined for JavaOne.
- Specified, architected, designed, and implemented Enterprise AMS, a set of custom extensions to AMS that allowed enterprise administrators to remotely configure their users handsets.
- Introduced and championed the use of wikis in the iDEN Mobile Devices Group as part of our formal process.
- Championed and deployed Doxygen as a part of the formal process for the iDEN Mobile Devices Group.
- Designed and managed the development of iDEN's first Advanced Music Application with support for metadata, podcast, and playlists.
- Designed a web-based automated test framework using iTunes, Xalan, Xerces, JSP, and Java SE for testing the handset multimedia subsystem.
- Shipped the World's first Dual Digital (iDEN/GSM) handset (iDEN i2000 Handset).
- Performed various Software Maintenance in the UI Layer (iDEN i2000 Handset).
- Developed UI for Multiple Network Registration Algorithms (iDEN i2000 Handset).
- Developed a PC Application that utilized a Subscriber as a SIM Card Reader.
- Developed UI for SIM Card User Information Management (iDEN i2000 Handset).
- Developed UI for SIM Card Security (iDEN i2000 Handset).
- Headed a Process Improvement Team that redesigned the iDEN Division Intranet Web Site.
- Designed Web Interface for hundreds of version controlled development documents.
- As an intern at Info Tech, I developed a Windows CE HPC component of an existing client server system that helped job foreman track the consumption and ordering of materials and people power. The Windows CE application supported remote data collection, update and synchronization from the field via a tethered download or a modem connection.
- “n-Dimensional Display Interface” Charles D. Estes. ACM MM, Amsterdam, Netherlands, 2016.
- “Video Killed The Data Store - Extending the n-Dimensional Display Interface for Full Screen Video” Charles D. Estes and Ketan Mayer-Patel. ACM MM, Brisbane, Australia, 2015.
- “The n-Dimensional Display Interface - A More Elastic Narrow Waist for the Display Pipeline” Charles D. Estes and Ketan Mayer-Patel. MMSys, Chapel Hill, NC, USA, 2012.
- “Moving Beyond the Framebuffer” Charles D. Estes and Ketan Mayer-Patel. NOSSDAV, Vancouver BC, Canada, 2011.
- “Adding and Optimizing a Subtarget for MIScheduler” LLVM Dev Meeting. San Jose, CA. 2014.
- “Using JSR 226 for Declarative UI on iDEN Mobile Devices” Sprint Developer's Conference. Fort Lauderdale, FL. 2005.
- “Exploring JSR 184: Mobile 3D Graphics” Nextel Developer's Conference. Washington DC. 2003.
- Programming Languages: Java, C, C++, Javascript, PHP, PERL, OpenCL, Python, Objective C, ActionScript, Fortran
- Web Programming: AJAX, REST, XSLT, XML Schema, XHTML, XPath, HTML, CSS, DOM, JSON, SAX, XQuery, XUpdate
- Development Environments: J2ME MIDP, RTOS, Linux, Unix, Android, Windows Mobile, Windows
- Other: SQL, MongoDB, UML, OpenMP, OpenGL
- Tools: Eclipse, MS Visual Studio, Git, SVN, Rational Clearcase, Rational ClearQuest, Sourceforge, Wikis, Jira, Bugzilla
- Professional Competencies: Mentoring, Innovation, Communication, Problem-Solving, Self-Motivated, Analytical, Collaborative, Agile, Responsible
- Engineering Excellence Level A Award for Designing an SD Card caching scheme for speeding up searching for files.. Motorola iDEN Engineering Excellence Committee, July 1, 2006
- Engineering Excellence Level A Award for Dramatically Improving the Multimedia Validation Time on iDEN Handsets.. Motorola iDEN Engineering Excellence Committee, June 8, 2006
- Engineering Excellence Level B Award for creating the Vibrator Lifecycle Test application.. Motorola iDEN Engineering Excellence Committee, November 23, 2004
Last updated: June 10, 2018