Software Engineer Iii
Liberty Lake, Wa
Develop Test Operating System (TOS) and diagnostic software (EUD) to validate F5's hardware platforms as well as firmware. --Design software to validate hardware, including components, interconnects, and performance. --Write software to communicate to firmware (LOP, Buc, Hubble LCD, BIOS, CPLD) and design scenarios to validate their functionalities.--Get the desired version of CentOS kernel, apply the modules for hardware pieces, integrate firmware, write tests, and wrap them together, build bootable images to boot on hardware. The booted system is used for all activities related to early hardware bring up and hardware build.--Design and implement RESTful APIs, which provides a way to retrieve and update hardware resources via HTTP besides the existing command line features.--Write diagnostic software (EUD) for customers to diagnose hardware problems. It is used as the criteria for RMAs.--Develop and execute the nightly smoke test with jenkins.My highlights:--Created the first backplane test for chassis products, filled in the gap in MFG test and diagnostic software.--Created a combined package EUD_VF, which combined the EUD for vic1 and vic2 together, reduced the number of released packages, and brought significant convenience to internal and external customers.--Designed interactive tests with Hubble LCD, introduced JavaScript to the project, set up the framework, and created and finished the code.--Created script to install TOS from SSD (to replace USB). This increased MFG test speed 30% and improved test stability significantly.--Consolidated multiple languages from Perl, Tcl, C, C++, Python, Bash to mainly Python and Bash.--Started the New Employee Orientation training document and trained new hires.--Started a Technology Forum in the team to promote intra-team technical communications.Languages and tools:--Main programming languages: Python, Bash--Tools/IDE: Linux, CentOS, Perforce, Bugzilla