A result - oriented software engineer, with over 15 years of hands on experience in full software development life cycle, from product-idea inception to product release.
- C, C++, C#
- Desktop and Embedded System Applications
- Proprietary Scripting Languages - Design /Dev
- API Development
- General Solution Architecture
- GUI & UX Design
- Team Leadership
Software Development Methodologies: Agile/SCRUM • Waterfall
Programming Environments: Cross-Platform proficiency (Windows, Linux, Unix) • Microsoft Visual Studio • GNU compiler collections, vim + gcc + make • Eclipse • QT Creator.
Project Management Tools: Microsoft Team Foundation Server • JIRA
Graphics: Adobe After Effects, Photoshop, Axialis.
Sr. Software Engineer
Confidential, St. Petersburg, Florida
- Worked on specific Confidential requirements for their Security and Detection System.
- The new system allows operators to do digital bag screening (through 3d imaging) at level 3 workstations prior to physical inspection without switching terminals.
- Screening workflows were modified to divert bags that meet the OIC criteria.
- This is a component (element) based system that involves X-Ray scanners (e.g. L3 Examiners - helical computed tomography), detection systems (algorithms), IQS (command & control and central system messaging), Control Stations, Viewing Stations and Physical Search Stations.
- My contribution to the project was to craft the solution that satisfied the new specifications, which included elaborating UML diagrams, preparing power point presentations, implementing proof of concept coding/demos, writing documentation, Confidential (database/reporting) -and of course-, enhancing the code of the underlying software, from the APIs to GUI.
- (Improvements & details are confidential).
- C/C++, STL, Postgresql, Qt, OpenGL, Qt Designer, Pentaho Reporting, shell scripting, Sockets, multi-threading, UML, XML, VMWARE, LINUX, Power Point, MS Project.
Sr. Software Engineer / Technical Lead
- Enhanced performance and overall look and feel for data plotting (all chart types) and drawing object tools available in Chart Analysis.
- Globalization, Localization and general customization. The TradeStation trading platform is now B2B, which requires white-Label versions for partners (mostly Asian countries).
- Designed and implemented a Customization API that enables teams to customize the TradeStation trading platform for specific partner needs. This API relies on a single point of specification, which provides great visibility during customization time.
- Created a consistent system-wide data formatting mechanism to help localization. This was especially helpful when data was presented in contexts that required mixed locales.
- Fast Symbol Lookup/Auto-complete w/PinYin
- Data feed is supported by the back end. Nonetheless, the client provides a very fast symbol look-up mechanism whose predictions of possible candidates are generated based on objective factors, like local user searching habits, and freshness. MRU was context sensitive.
- This control also provides direct PinYin support for Asian users (e.g. Chinese/Korean/Japanese). For example, Chinese market symbol names or descriptions can now be fully or partially typed in as they are pronounced using the roman alphabet.
- Windows/MFC/C++/C#/CLI/XAML/XML/SQLite/COM/GDI-GDI++/DLLS/TFS/STL/Pin Yin/Multi-threading/Localization-Globalization/System Messaging.
Sr. Software Engineer / Team Lead
Confidential, Miami, Florida
- Writing the Confidential (Real Time Streaming Protocol) (RFC 2326), RTP (Real-Time Transport Protocol) (RFC 1998) and RTCP (RTP Control Protocol) (RFC 3550) protocols client-implementation for media streaming.
- Writing the Confidential DirectShow filter, and an Confidential control for media presentation.
- Writing high level API abstracting media device capabilities (Video cameras and media servers).
- Writing design, and user (programmer), documentation for system integration.
- C++/STL/ Confidential -TK/PERL/ (ATL/COM)/TCPIP/UDPIP/SOCKETS/MULTITHREADING/ Confidential /RTP/TCP
Sr. Software Engineer / Team Lead / Project Manager
Confidential, Fort Lauderdale, Florida
- Writing the Confidential Digital Storage Media Command and Control (DSM-CC ISO/IEC 13818 part 6 of the MPEG2 Standard) User-Network protocol implementation for data carrousel. The system generates live multiplexed Transport Stream packets (IS/IEC STANDARD 13818-1) from data objects in a container (e.g. TV Shows, software updates, media and general-purpose data); The system was successfully tested to inter-operate with the HARRIS NetVX system to broadcast contents.
- The DSM-CC implementation included SMPTE 325 for flow control.
- Writing the device driver for the DSM-CC base RF Communication Network Operation Center → Set-Top-Box.
- Writing a custom Scripting Language designed for bulk processing, and to be able to execute on two different contexts (NOC and Set-Top-Box) simultaneously. When a script is started at the NOC, some portions of the script are received by a number of Set-Top-Boxes in the form of bytecode; the instructions have complete access to all software components on the remote device. Applications: Customer Service, QA Test Engineering, Maintenance, AI on consumer habits, training, and product's features demos.
- Writing a Confidential /TK based programmable Graphical Remote Control with broadcasting capabilities.
- Writing custom tools and APIs for QA people.
- C/C++/STL/Compiler construction YACC/LEXICAL ANALIZER LEX/GLOOX/MYSQL/XML/LINUX/WINDOWS/TCPIP/UDPIP/FAM/ Confidential -TK/XML/MULTITHREADING/SOCKETS/SHARED MEMORY AND MESSAGE QUEUES.
Sr. Software Engineer
Confidential, Boca Raton, Florida
- Designing and implementing protocol semantics for required two-way information exchange among system components ( System Messaging ). There were at least two on-board computers per car in a consist. The system messaging covered commands, notifications, events, and general-purpose messages.
- This component is the main instrumentation to the operator and maintenance personnel. This component was also used for route tracking, speed, automatic announcements, PTT, etc. To provide some examples, the system would advise an operator that a video camera has been sabotaged at a specific location (e.g. car and relative camera placement), or it could also advise that a passenger was pressing the PTT button requesting communication with the operator.
- Implementing the serial communication, the collection and data interpretation among the IRMA A21S Analyzers, sensors and on-board computers.
- This component keeps track of the number of passengers currently on board, and the load among cars.
- There were two sensors per door strategically positioned to form a curtain that reads the radioactivity of a body heat, as well as the moving directions.
- Implementing the modules that met system requirements for a robust event driven Confidential, with live DVR capabilities.
- This component is also used to emulate rear view mirrors. For example, external cameras may stream video data to the monitors located in the leading cabin in turn, as the train approaches and leaves a station. This feature provides the operator the visibility needed to operate the doors with caution.
- Programmed chip set for a health monitoring system (Linux/Windows on-board computers).
- Writing a QT based diagnostic and statistical log viewer tool that worked on both Linux and Windows on-board computers.
- Worked on generic dynamic kernel modules to enable/disable specific system functionalities.
- Writing core API as well as design, and user (programmer) documentation for system integration.
- C/C++/TCPIP/UDPIP/Message Queues and other IPCs/Linux/Windows/RS485/ Confidential -TK/Perl/QNX Neutrino/WMI/MFC/CGI/HTML/GCC/MAKE
Sr. Software Engineer
Confidential, Phoenix, Arizona
- Designed a scripting language that abstracted telephony hardware for a user-driven dictation system. The system front end was mainly used by non-technical personnel, who were able to create user accounts and profiles (service logic) for external organizations. The scripting language supported up to five different data types for global, local and system variables; it also supported user-defined functions for modular programming, with up to 2000 layers for recursion. Labels, loops, conditional statements, and database interface were also part of the feature set. The bytecode generated by the script source was stored as a Blub record in a database. The bytecode was then dynamically loaded and executed on telephony servers as users were identified during a call/recording session.
- System features: Key mapping, digital/analog call routing, interface to local PBX, VCR recording capabilities during a dictation session. Review mode with overlapping and section splitting on voice files. Personalized sessions, automatic task assignment for remote and local transcription agents. Reporting.