Douglas Paulson

dtp@dougtp.com

SUMMARY

 

Proven Project Leader and Developer of software to assist with the debug and validation of hardware/microprocessors.  Experienced in developing software that spans across multiple operating systems and hardware platforms. Effective at leading smaller teams to achieve goals as well as ensure team cohesion.  Possesses an extensive knowledge of PC platform architecture from the software perspective.

 

ACCOMPLISHMENTS

 

  • Coordinated the development of custom power management software to secure a customer design with a top 5 OEM.  Received a Vice Presidential Spotlight award for this effort.
  • Ramped up an offshore team to handle additional workloads helping to keep costs down.
  • Updated AMD PowerNow!(tm) software to support multi-core processors on Microsoft Windows® 2000.
  • Managed the porting of software tools to a framework that allowed rapid porting to different operating systems, reducing porting time from weeks/months down to days.

 

SKILLS

 

Languages

 

·      Proficient in: Microsoft Visual C++® and C.

·      Familiar with: C#, x86/x64 Assembly, STL, gcc, gdb.

Software

 

·      Platforms: Microsoft Windows® 2000, Microsoft Windows® XP, Microsoft Windows® Vista, Microsoft Windows® Server 2003/2008, Windows 7, DOS.

·      Familiar with SUSE Linux, QT.

Hands on Experience

 

·      Experienced going over technical documentation related to processor and chipset registers/features.

·      Experienced working across teams including design, validation, debug, legal, QA, and Software Services.

·      Experienced using lab equipment such as oscilloscopes and logic analyzers.


 

EXPERIENCE

 

Member of Technical Staff (MTS) Software Engineer

Advanced Micro Devices (AMD)

2007-Present

 

·      Leader of the Specialized Tools, a group that develops software to assist with the debug and validation of hardware. (4 members in Austin, 3 offshore)

·      Coordinated efforts with newly acquired teams (AMD bought ATI) to update diagnostics to allow porting to various operating systems. (Windows/Linux/DOS)

·      Collaborated with the offshore team reviewing/assigning tasks. (early morning conference calls, occasional video conferences)

·      Maintained a handful of tools for Windows in C++ and C# tied to power management to remain familiar with the development process the local and offshore teams utilized.

·      Researched and defined requirements for tools supporting future products.

 

Senior Software Engineer

AMD

2004-2007

 

·      Continued maintaining various Specialized Tools across different processor families/revisions.

·      Expanded into writing code to interact with chipset features such as the SMBus and maintained/updated AMD’s PowerNow!™ technology from the application level.

·      Updated numerous applications to support multi-core and multi-node processors/platforms.

·      Moved non-mission critical applications offshore for maintenance, essentially managing a team of 3-4 developers in addition to the team in Austin that comprised of 4 engineers and one coop.

·      Adoption of QT and the use of abstract classes allowed tools to be ported between operating systems up to 50% faster than traditional rewrites. (often faster)

 

Software Engineer 2

AMD

1999-2004

 

·      Ported QNX embedded OS to a platform utilizing the ElanSC520 32-bit x86 micro-controller and booting from flash. Work involved getting the memory controller initialized/creating a stack such that C-code could be executed and the OS booted.

·      Developed PERL script to compare the x64 assembly output of the NASM (golden) assembler vs. Microsoft’s MASM x64 compiler to ensure binary output matched.  This involved utilizing every instruction and address mode.

·      Joined the Specialized Tools team as an individual contributor taking over the development of several validation/debug tools mostly related to power management.

 

Software Engineer 1

AMD

1998-1999

 

·      Primary responsibilities included the design and development of embedded C code for 16 and 32-bit x86 micro-controllers.

·      Developed C drivers for embedded Ethernet controllers and I2C busses.

 

EDUCATION

 

University of Idaho

Moscow, Idaho

B.S., Computer Engineering