Shawn Johnson

Logo

Software Engineer, Development Engineer

Maple Grove, MN

Shawn Johnson
Versatile Software Engineer seeking new opportunities in the Twin Cities
S.Johnson@Computer.org

Summary
Versatile Software Engineer experienced in design verification, software/firmware development, hardware/
software system integration, tools development, and failure analysis in diverse environments. Products I
have worked on include endpoint cloud backup / sync & share platform, FC/FCoE switches, host-baseed
virtual RAID adapter on Windows/UEFI, system containing heart monitoring patient-worn patch / Bluetooth
to Zigbee wireless gateway / and Central Station Monitor, vision sensors, storage virtualization / RAID
SAN controller, digital ASIC traffic manager, cable modem supporting VoIP, and SCSI hard disk drives.
Prefer to work in a collaborative teaching / learning environment, which helps everyone improve. Enjoy
troubleshooting / debugging issues found in early development, solving problems. Specialties: C/C++,
OO Perl, software development, SCSI hard disk drives, cable modems, voice over IP (VoIP), digital ASIC
verification, storage virtualization, storage networks, vision sensors, SQL database, data communications,
debugging and troubleshooting. Top 5 strengths (Clifton Strengths Finder): Ideation, Learner, Analytical,
Includer, Intellection

Experience
Senior QA Software Engineer at Code 42 Software, Inc.
August 2013 – October 2015 (2 years 3 months)
• Developed automated tests in Ruby for SharePlan (real-time endpoint file sync & share) and CrashPlan
(endpoint cloud backup) platforms. • Verified client and server APIs, as well as engine’s interactions with
filesystem.

Staff Software Engineer – Test Automation at QLogic
March 2012 – July 2013 (1 year 5 months)
• Defined, developed, and maintained automated tests for Fibre Channel and FCoE (Fibre Channel over
Ethernet) Switch products. • Created class detailing testbed configurations, defining switches and test
port connections, allowing tests to dynamically determine testbed capabilities. • Updated tests to better
identify cause of failure for debug and defect traceability. • Improved coverage through use of test case
randomization. • Increased team productivity and reduced defects through promotion of practices increasing
code re-use and maintainability.

Senior Automation Test Engineer at Dot Hill Systems
August 2009 – March 2012 (2 years 8 months)
• Automated system tests in Perl for RAIDCore host-based software RAID on Windows and UEFI, using
SAS and SATA hard drives. • Performed extensive physical media error verification for recoverable and

Page1
unrecoverable errors using various RAID types, cache settings, and IO sources. • Repaired abandoned
auto test system. Analyzed test code for intended behavior, then transitioned to best practices, greatly
improving error detection, maintainability, coverage, logging, and trustability. • Integrated TestTrack Test
Case Manager with auto test framework using SOAP API for AssuredUVS product group in Israel. • Created
tools for RAIDCore performance analysis using IOMeter and MySQL, which generate charts and reports in
HTML.

Senior Lead Software Test Engineer – Contract at Corventis, Inc
May 2009 – July 2009 (3 months)
• Contract for verification of medical device system consisting of patient-worn patch for heart monitoring,
Bluetooth to Zigbee wireless gateway, and Central Station Monitor for system configuration and alert
notification. • Directed activities of small offshore team in development of test case protocols and prepared
them for demo presentation to potential investors. • Performed integration of system components developed
by disparate teams. • Wrote automated firmware design verification tests for wireless Bluetooth heart
monitoring patch through simulation of gateway device in Python. • Wrote test case protocols, executed
tests, and wrote test report for submission to FDA. • Reviewed requirements and specification documents for
correctness, consistency, and testability, discussing issues with offshore team and management.

Contractor – Test Engineer at Dot Hill Systems
March 2009 – May 2009 (3 months)
Short term verification contract, testing RAIDCore software RAID product.

Test Engineer at Banner Engineering
June 2005 – February 2009 (3 years 9 months)
• Created regression test platform in Perl for system level verification of vision sensor VxWorks firmware
and Windows GUI software. • Developed automated production test software and hardware for vision
sensor with image sensor, discrete I/O, LCD touchscreen, USB, and ring light. Managed project schedule,
defining tasks and required resources. • Directed offshore contractor in test software development and local
technicians in both maintenance and development activities. • Built application to aid debugging, analysis
and repair of returned sensors.

Senior Design Verification Engineer at Compellent Technologies
October 2002 – May 2005 (2 years 8 months)
• Performed design verification of Storage Area Network (SAN) controller, supporting dynamic growth,
virtualization, point-in-time copies, mirroring, remote replication, cache, automatic RAID recovery, and
controller fail-over, with Fibre Channel and iSCSI storage interfaces, and web-based GUI. • Designed
MySQL test database containing test definitions and results; maintained traceability to requirements, tested
features, build, environment, and defects. • Developed automated test environment using Perl, C++, and
Java. Primary auto test interface was HTTP / XML interface used by GUI. • Gained RAID expertise through
white-box verification of RAID subsystem; elicited specification, provided testability requirements, and

Page2
defined test cases. • Performed failure analysis and collaborated with design teams to efficiently isolate and
fix defects. • Wrote test plans, identifying features to be tested and test strategy.

Senior ASIC Verification Engineer at Terago Communications
June 2001 – May 2002 (1 year)
• Performed design verification of high-performance networking ASIC, a 10 Gbps full duplex Traffic
Manager implementing Class-Based Weighted Fair Queuing for QoS applications. • Collaborated with
ASIC designers to define test strategies along with the development and execution of test plans. • Created
simulation environment using VCS, Specman/E, C/C++, Perl, shell scripts, Verilog, and MySQL for
verification and performance analysis. • Wrote packet generators and checkers with error insertion
capabilities. • Worked on C model used for gathering statistics for optimization of design.

Design Verification Engineer at ADC Telecommunications
February 2000 – May 2001 (1 year 4 months)
• Directed software and hardware design verification of the Broadband Telephony Interface (BTI), an
outdoor, DOCSIS 1.1 Cable Modem with embedded PacketCable 1.1 Multimedia Terminal Adapter (MTA),
four analog POTS lines supporting HomePNA 2.0, and 10Base-T Ethernet. • Gained expertise in configuring
and troubleshooting components of voice over IP over cable network, including CMTS, CM, MTA, router,
Call Management Server, RF plant, TFTP server, DHCP server, and customer premises equipment. •
Initiated creation of team website, our primary information resource, containing all pertinent information
for BTI development, which vastly improved group communication. • Supported System Verification Test,
Mechanical Engineering, Manufacturing, business partners, and trade-show efforts.

Firmware Engineer at Western Digital Corporation
November 1999 – January 2000 (3 months)
• Developed C/C++ disk-side controller firmware for SCSI hard disk drive. • Aided C firmware developers in
the transition of code from C to C++.

Systems Integration Engineer at Western Digital Corporation
June 1997 – October 1999 (2 years 5 months)
• Advised cross-functional groups in the system level integration of firmware and hardware for SCSI
hard disk drives. Groups included Interface Firmware, Servo Firmware, Electronics, Mechanical, Read/
Write Channel, Tribology, Tools, Burn-In Self Test, Functional Integration Test, Quality Assurance, and
Production. • Identified problems, resolved issues, managed resources, and verified designs. • Lead Systems
Engineering tools development and maintenance for multiple programs and other functional groups, carrying
out failure analysis, functional and performance testing, drive preparation, and test process integration.

Skills & Expertise
Debugging
Embedded Systems

Page3
Perl
Testing
Linux
C
Test Automation
SAN
Troubleshooting
Fibre Channel
Storage
Software Development
Hardware Architecture
Test Planning
Firmware
C++
Python
RAID
Object Oriented Design
FCoE
Storage Virtualization
Storage Area Networks
SCSI
SQL
Switches
Ethernet
Integration
Hardware
Unix
Verilog
ASIC
VoIP
DOCSIS
PacketCable
ASIC Verification
Git

Education
University of Iowa
BSE, Electrical Engineering, 1992 – 1997
Activities and Societies: IEEE, Hawkeye Marching Band, Jazz Band II

Interests
playing trumpet, homebrewing

Page4
Shawn Johnson
Versatile Software Engineer seeking new opportunities in the Twin Cities
S.Johnson@Computer.org

3 people have recommended Shawn
“Shawn is very good at keeping a codebase at high quality, from programming defensively attempting to
catch all possible errors to thinking how certain code would scale. He is also a great teacher, and taught
me a lot while we worked in the same projects. Shawn’s skills are great, and can easily add value to any
organization he is a part of. ”

— Alfonso Vazquez, Associate Software Quality Assurance Engineer, Code42, worked indirectly for Shawn
at Code 42 Software, Inc.

“Shawn was a fantastic test engineer who accomplished a lot on his short contract at Corventis, and
had many more innovative ideas planned out before he left. 1. Shawn came up to speed quickly on our
technology, learned python in days and wrote a software test harness for our device that we continue
to use today for formal verification testing. The software test harness was very elaborate, including
communication with bluetooth hardware and communication over TCP/IP sockets using many different
standard internet protocols. 2. Shawn helped debug the hardware programming interfaces of a number of
Corventis components 3. Shawn helped debug and develop the software installation process for a linux based
desktop component. 4. Shawn developed tremendous amounts of documentation capturing learning and
instructions enabling other engineers to continue and repeat his work, which was no small task in the time-
limited resource-constrained environment we were working in. Looking forward Shawn was ready to apply
advanced testing techniques to the products, which strongly demonstrated his understanding both of software
testing and the Corventis technology. Shawn was a great asset to our team and his ability to quickly learn new
systems and technologies would make him a priceless resource to any engineering team in the future.”

— Brion Finlay, managed Shawn at Corventis, Inc

“I have worked with Shawn for over 3 years, and I have been very impressed with his excellent technical
background in terms of both Product Development and Product Testing techniques. Shawn is a fun person to
work with and has a lot of leadership qualities.”

— Yeung Chan, worked directly with Shawn at Banner Engineering

Contact Shawn on LinkedIn

Page5

  • Updated 7 years ago

To contact this candidate email S.Johnson@Computer.org

Contact using webmail: Gmail / AOL / Yahoo / Outlook

This entry was posted in . Bookmark the permalink.