Software engineer with diversified experience including C++, Java programming, big data, and web-based applications. Developed CAD tools for IC design, distributed computing projects, Hadoop projects, mobile map apps, machine learning projects, and web-based client/server applications. Passionate about software work to improve quality and runtime. Developed projects using multi-thread in C++ and Java to improve runtime by more
Software engineer with diversified experience including C++, Java programming, big data, and web-based applications. Developed CAD tools for IC design, distributed computing projects, Hadoop projects, mobile map apps, machine learning projects, and web-based client/server applications. Passionate about software work to improve quality and runtime. Developed projects using multi-thread in C++ and Java to improve runtime by more than 3X. Leverage creative and analytical abilities to solve complex problems.
• C++, Java, Android, Python programming
• Distributed computing, Hadoop, Pig, multi-thread
• Machine Learning, R programming
• Algorithms, data structures, Google map
• Java EE, Spring, Hibernate, MySQL, Tomcat, REST, AngularJS
• IC CAD placement, timing optimization, hierarchy floorplan
• Timing analysis, power analysis, clock tree, route
Sr. Member of Consulting Staff @ RTL Compiler Physical
Developed placement and timing optimization, using C++ in Linux platform. Worked on software product of more than 800,000 lines of C++ program. Worked with the team of > 60 people.
• On crucial ARM benchmark A15Max in Q4 2011 in Cadence, I developed a new feature, Critical Path Replacement, to improve timing quality by more than 15%. The new feature helped Cadence win this crucial ARM benchmark. After that, Cadence gave me Department Level Award “FED – A15Max Project Award, Critical Path Replacement Q4, 2011”.
• Developed and maintained distributed computing (GPS) to partition large designs of > 1M cells into blocks of 130K cells each. Helped improve timing quality and reduce runtime.
• Developed and enhanced detail placement, using min-cost network flow. From 2011 to 2014 (3 years) San Jose, CAStaff Software Engineer @ Developed global placement in place & route, using C++ in Linux platform.
• Enhanced congestion handling in placement and turned benchmarks from un-routable state to routable, including a tough Broadcom design.
• Improved runtime of congestion handling in global placement by average 3.9X using multi-thread. From 2009 to 2011 (2 years) Santa Clara, CASoftware Engineer @ Developed place & route tools for high-performance FPGA, using C++ in Linux platform.
• Developed timing analysis as project lead from scratch to good state, which correlates well to timers in major EDA companies, top 800 paths matched well on 60+ regression tests. From 2007 to 2009 (2 years) Santa Clara, CASoftware Engineer @ JED Advance, a physical design tool for mixed-signal designs, using C++ in Linux platform.
Developed standard cell placement and load-balanced buffer tree for clock nets.
• Integrated multi-grid linear solver for power analysis and placement: 3X faster than existing product. From 2005 to 2007 (2 years) San Jose, CA
Master of Science (MS), Computer Science @ University of ArizonaInternet Programming and Development Certificate @ University of California, Santa CruzMaster of Science (MS), Mathematics @ University of Washington Felix Huang is skilled in: C++, Software Development, Java, Algorithms, Linux, C, Android Development, Java Enterprise Edition, Machine Learning, Multithreaded..., Distributed Systems, Scalability, Data Structures, C/C++ STL, Programming, EDA, Computational Geometry, Software Engineering, Python, Unix, MySQL
Looking for a different
Get an email address for anyone on LinkedIn with the ContactOut Chrome extension