Technical Proficiencies

Platforms: Linux, UNIX, Microsoft Windows  Languages: C++, Perl, Ruby, Python, Go, Tcl/Tk, JavaScript, bash/sh Tools: Ruby on Rails, Catalyst, MySQL, Perforce, Git, Mercurial, make, CVS, ClearCase, ExtJS, JQuery,  Qt

Summary

INNOVATIVE SOFTWARE ENGINEER

Demonstrated Industry Expertise in Advanced Dynamic Languages and Object-Oriented Design

Technically talented, accomplished, and results-oriented Software Engineer with expert proficiency in leading commercial projects using Agile development from feature specification to production. Organizational driver offering productivity improvements, pioneering technologies, process reengineering, and functionality enhancements. Distinguished performance driving innovation and expertise in dynamic language environment with high-level object-oriented programming.

Core Competencies

- Software Development Life Cycle (SDLC)- Strategic Planning and Tactical Execution - Integrated Development Environment (IDE)- Client Requirements Analysis and Definition - Programming, Designing, and Testing- Technical and Software Documentation- Team Collaboration and Project Leadership- Strong Analytical and Problem-Solving Abilities

Work History

Work History
Jul 2015 - Present

Software Engineer/Contractor

Comcast, INC.

Provided technical support and added features to Perl-based open source CDN software (github.com/Comcast/traffic_control). Rewrote significant portion of rpm build system in bash.

Participated in technical discussions to redesign CDN software in Go. Collaborated in development of Go program to provision machines in OpenStack from data pulled from existing http API.

Jan 2003 - Jul 2015

Senior/Staff Software Engineer

XILINX, INC.

Created a series of design rule checks using C++ and Tcl, providing feedback to the hardware designer early on in the process to enable cost-effective designs.

Led team in learning and adopting C++-11 features and practices. Modified existing code base to leverage multi-threading to increase throughput dramatically.  Researched and resolved many data sharing problems throughout the large code base enabling threading in different parts of the system.

Played instrumental role in sharing architectural details in developing web application, gathering data from various groups and internal worldwide employees. Build and maintain numerous tools using Perl, Tk, and a web interface with Perl, Catalyst, YAML, and ExtJS, developing device models for new architectures using an Agile development approach.

Delivered substantial cost savings through enterprise-grade technology by adopting Open Source Software (OSS), making contributions with the aim of fostering open source software innovation and growth.

Developed command line tools and graphical applications, ensuring completeness, consistency, and correctness checking through creation of data for hardware designers.

Produced custom scripts and designed file format for legacy Excel-based structured data file to fit model of data; defined and produced API modules in Perl to handle consistency checks for clients.

Built internal GOLD system for storing information for hardware to software integration using Ruby on Rails and MySQL, transitioning to Perl with Catalyst and YAML.

Directly contributed to receiving department award for productivity and several patents for tools to extract netlist information from a Cadence database using Skill, a Scheme-based programming language.

2000 - 2003

Senior Synthesis Engineer, Interface Group

SYNPLICITY, INC

Worked closely with Marketing and Engineering to create packages, allowing developers to choose tools based on a controlled workflow in a multi-platform environment.

Improved stability and enhanced functionality by adding new features for external cross-probing interface.

Sole Developer in providing integration between Synplify and Xilinx' Project Navigator.

Increased efficiency for the software developers to create and test executables and libraries.

Designed build system rewrite using Make and Perl, resulting in more robust and reliable builds.

Maximized productivity in using networking and remote desktop control tools, e.g., VMware, SSH, and VNC to troubleshoot specific configurations that were found to cause problems under different operating systems.

1996 - 2000

Senior Software Engineer

LUCENT TECHNOLOGIES, INC.

Led team responsible for build system and revision control based on Concurrent Versions System (CVS). Acted as a trusted, independent advisor and technical resource for UNIX, C++, Perl, Windows, and make.

Developed and delivered Update Express tool for Call Management system to resolve bottleneck issues.

Improved scalability by initiating seamless transition from internal source control tools to ClearCase,

Software Configuration Management (SCM) system.

Increased reliability by rewriting significant portion of build system driver using Perl.

Designed and implemented a C++ module to describe FPGA programming, reducing time-to-market.

1994 - 1996

Software Engineer

VERIBEST, INC.

Achieved reliability, user extendibility, scalability, and multiple simultaneous testing support by writing automated extensible ASIC library test program using Perl to set up and run test scripts.

Developed ASIC/FPGA design kits using Perl, C++, and C on UNIX and Windows to broaden language and platform support and reposition the company to better compete with the bigger players in the board market.

Completed special projects while managing multiple responsibilities simultaneously.

1989 - 1994

Software Engineer

UNITED TECHNOLOGIES MICROELECTRONICS CENTER, INC.

Introduced and maintained open source development tools, e.g., emacs, gcc, gdb, Perl, LaTeX, ghostscript, RCS, and CVS.

Served as Project Lead for Valid toolkit support and Cadence toolkit development to create and generate more cost-effective products.

Played key role on simulation model compiler project; supported Verilog, Verifault, Valid, Mentor, IKOS, and ZYCAD tools for logic and fault simulation.

Education

Education

Bachelor of Science, Computer Science

PENNSYLVANIA STATE UNIVERSITY

Programming Languages, Algorithms, Systems Architecture, Graphics, Digital Design

Object-Oriented Design, Software Requirements Analysis, Compiler Design

UNIVERSITY OF COLORADO