Development Staff Engineer Resume
Longmont, CO
SUMMARY:
- More than 10 year programming experience with thorough knowledge of Agile/Scrum/Kanban software development on multiple platforms.
- More than 10 year data manipulation experience.
- Extensive API development, algorithm and optimization, software architecture design, and statistical data analysis experience. Familiar with XP, and TDD (test driven development) methodology.
- Expert at Python(numpy, scipy, matplotlib, multithreading, pandas, pytest), Matlab; Hands - on experience of C/C++, Java, SQL, Bash, WxPython, QT, HTML; knowledge of Javascript, Spark, big data, R, machine learning, JMP, Hive, and Hadoop.
- Strong analytical capability, creative problem-solving, and software debugging skills.
- Self-motivated, can work enthusiastically, independently, and effectively in a cross-functional team environment.
- Be well-organized, detail-oriented and able to handle and prioritize multiple tasks.
- Strong capability to grasp new technology quickly.
TECHNICAL SKILLS:
Techniques: Object-Oriented Programming (OOP) and Design (OOD), numerical dataProcessing, modeling, interpretation, and real-time development.
Computer LanguagesOr Scripts: C, C++, Python, Matlab, wxPython, QT, Java, Perl, Cshell, Bash, HTML, andSQL.
Database: Relational databases such as Oracle, SQL Server, MySQL, PostgreSQL,SQLite, SQL Alchemy, and MSACCESS etc.
Computer Platforms: Windows, Unix/Linux.
Applications: Visual Studio, Eclipse, Matlab, GIT, GITHUB, PVCS, CVS, SubVersion,Slack, and the set of Atlassian tools, such as Jira, SourceTree, Crucible, Stash,BitBucket, Bamboo etc.
PROFESSIONAL EXPERIENCE:
Confidential, Longmont, CO
Development Staff Engineer
Tools: used: C/C++, Python, QT, Matlab, Atlassian tools, NSIS, numpy, scipy, Eclipse, scope, visual studio, google set(google drive, docs, aodocs etc.), lucidchart, slack
Responsibilities:
- Leaded python-only project for next generation of a complex automation test system. I joined the designing of its architecture and function specifications, documenting, developing and debugging code, writing unit-test cases.
- Developed drivers for different preamp cards.
- Designed and developed pattern quality metrics tests, write current optimization test, SAM error test, gray code error test, fast-vga test, and modified SEAM test to check quality of media from different manufactures.
- Developed Prism test based on python, Matlab, and C/C++ on windows. It includes Prism server, client, and GUI development, and becomes one of the critical media quality tests used at all Seagate sites around the world.
- Developed Prism test including GUI purely based on QT, python, numpy, and scipy on RedHat Linux installed on Aperio box. It dramatically improves test performance.
- Wrote documents, maintained and added new features, and released prism test for several years.
- Using Atlassian tools to track bugs and progress, review and manage code, build and test releases.
- Providing Prism, Chirp, and other support for different sites across the world.
- Developed APIs to call xyratex functions direct from python using C/C++ in Visual studio 2010 (VS2010).
- Porting FCL test scripts into python code.
- Tested heads and media for new products, processed, analyzed, and interpreted the test results, then optimized these tests.
Software Engineer
Tools: used: C/C++, Python and packages, GUI, XML, SQLite, Ultra-sound systems, Scope, Subversion, NSIS, Jira, Eclipse
Responsibilities:
- Developed FirstAssist to simulate different probes to detect defective channels in ultra-sound systems and report test results in PDF format. It includes a GUI developed by Python, wxPython to control system settings, test cases, test suites, graphics display, and interactions.
- Developed firmware for FirstAssist hardware using C, Silabs USBEXpress, and Keil embedded development tools.
- Developed an interface to flash new firmware. It is developed using Python, C, and Silabs USBExpress dynamical libray.
- Integrated database with FirstAssist using SQLite so that it can keep test results. Managed source code using subversion and tracking bugs using Jira.
- Wrote documents for FirstAssist verification and validation.
Senior Software engineer
Tools: used: Python, C/C++, Matlab, GUI, Bash, Linux, Eclipse, Scope, MDW
Responsibilities:
- Developed Aperio online help function and a bi-directional file transfer function between the control center and Aperio boxes, which dramatically improved users’ convenience.
- Developed an Aperio package to control power board automatically, and an auto-update module to upgrade python packages and distribution in Aperio.
- Developed python and Matlab programs for Aperio data post-processing, which is more than 10 times faster than the legacy code.
- Fixed socket bugs between the control center and Aperio boxes.
- Optimized hardware system configurations for a new media (DTR) and tested its compatibility
- Tested different hard drive media (DTR) from different manufactures.
Developer & Researcher
Tools: Used: C/C++, Perl, Cshell, Java, Matlab, HTML, GUI, SQL, GMT, MS Access, Digital Signal Processing, Filtering.
Responsibilities:
- Java programming for processing instrument responses which speeds up one-third comparing with some other commercial software.
- Joined the Fissure-Matlab project to manage huge seismic data. My duties were to design and develop GUIs, write documentation, specify functions, test & debug, and maintain the software.
- Developed programs to automatically and remotely retrieve the GPS data, pre-processed them, converted and archived them.
- Developed programs to get the positions using GPS Point-Positioning strategy and ambiguity solutions etc. techniques.
