Keith Mcdonald

Keith Mcdonald Email and Phone Number

Retired software engineer
Keith Mcdonald's Location
Seattle, Washington, United States, United States
Keith Mcdonald's Contact Details
About Keith Mcdonald

I am passionate about helping companies create great products that solve customer problems and helping teams discover safer, smarter and better ways to create these products.I help teams gain control over large codebases by:* Teaching techniques for working with legacy code (incremental design, reversible decisions)* Helping developers strike a balance between delivering features and reducing technical debt* Getting the whole team involved in the product and breaking down silosI help grow communities of engaged, high-performing software professionals by:* Helping teams determine who they are really looking for and building the kind of recruitment campaigns that find them* Training teammates in everything from understanding the customer to working together collaboratively to the deep technical knowledge needed to write simple, maintainable code that lets them be responsive to change* Building good working relationships throughout the organization and bringing together communities dedicated to productivity and collaboration

Keith Mcdonald's Current Company Details

Retired software engineer
Keith Mcdonald Work Experience Details
  • Dbt Labs
    Staff Software Engineer
    Dbt Labs Oct 2023 - Mar 2024
  • Shopify / Flexport
    Staff Finops Engineer
    Shopify / Flexport Sep 2022 - Oct 2023
  • Gremlin
    Lead Software Engineer
    Gremlin Jun 2021 - Jul 2022
    San Jose, California, Us
    • Reduced Gremlin's AWS costs by optimizing their most expensive DynamoDB write traffic, resulting in 50% cost savings.• Introduced better tools and techniques to the Gremlin R&D team, including risk storming, the Mikado Method, performance profiling with VisualVM, load testing with JMeter, single table design for higher performing database queries, and various improvements to local development.• Collaborated to solve pressing problems and to deliver valuable features like a better algorithm for choosing Gremlin's container runtime and the replacement of confusing error messages with guidance on hypothesis testing.• Collaborated to design processes such as the R&D testing strategy and system regression test environment, workload record/replay, and custom test data management tooling.
  • Amazon
    Software Development Engineer Ii
    Amazon Nov 2011 - Jun 2015
    Seattle, Wa, Us
    • Drove the scaling and stress testing effort for fulfillment optimization and the dozens of services underneath it for peak 2014 (aka Black Friday/Cyber Monday)• Led the development of software for moving inventory around Amazon’s fulfillment network so that each item is placed in the optimum warehouse based on a simulation of how items from real orders would be assigned in the presence of an infinitely fast warehouse-to-warehouse transfer mechanism, delivering the first version into production in four months and achieving savings of $20M in just its first year.• Evangelized improved software engineering practices that were taken up by the entire Fulfillment Optimization team and spread to other teams in the Global Inventory Platform division, including Acceptance Test Driven Development using Walking Skeletons for starting new development, and the Mikado Method for refactoring of large codebases.• Performed a test-driven rewrite of a service that had been causing regular outages due to bugs in the original implementation. Despite increases in load, the new service did not cause another outage during my tenure.
  • Ibm
    Staff Software Developer, Db2
    Ibm 2001 - Oct 2011
    Armonk, New York, Ny, Us
    • Presented "DB2 Workload Manager Introduction and Best Practices" and "DB2 Monitoring for Performance Tuning and Problem Determination" at the Michigan DB2 Users Group.• As part of MASc. research paper, invented a workload generator that has now been used by a CAS student to prototype my goal-based control design as her thesis and also used to generate the workload for the Workload Manager hands-on lab at the Information On Demand 2008 Conference.• Wrote a series of three articles on using DB2 Workload Manager histograms that were published on DeveloperWorks.• Developed the specification and design for the Workload Management Monitoring and Control line item in DB2 version 9.5. This was the largest line item in the Workload Management solution, which was the largest solution to be delivered in DB2 version 9.5.• Designed and implemented the graphical user interface to Query Patroller: the Query Patroller Center.• Designed and implemented the query and table maintenance scheduling, result table generation, and e-mail notification functionality of the Query Patroller engine. • Assisted the Information Development team with the writing of documentation and help files for Query Patroller version 8.• Developed education materials and presented and helped to organize courses targeted at familiarizing the sales and support teams with the functionality of Query Patroller version 8.• Mentored interns and seasoned veterans of IBM to quickly turn them into effective members of the Query Patroller development team.
  • Ibm
    Software Developer, Db2 Query Patroller
    Ibm 2000 - 2001
    Armonk, New York, Ny, Us
    • Solved customer problems that required on-site visits in critical situations where customers were at the brink of abandoning Query Patroller version 7. These customers successfully moved to Query Patroller version 8 in their production environments.• Redesigned large portions of the version 7 Query Patroller code to solve customer problems.• Taught course for educating sales representatives and customer support analysts in Query Patroller version 7 usage, troubleshooting and performance tuning.• Assisted other teams that had need of a developer who could get up to speed quickly on new technologies:• Developed the prototype for the DB2 task scheduler.• Aided in the initial transformation of several internal DB2 libraries into the IBM Operating System Services Everyplace (OSSe) library, for use in several IBM products.• Designed and developed improvements to plug-in component support in the DB2 Control Center.
  • Ibm
    Software Developer, Db2 Administration Tools
    Ibm May 1999 - 2000
    Armonk, New York, Ny, Us
    • Invented a tool that automates the error-prone process of adding trace information to source code and a tool that formats trace output. Together, these tools have eased the maintenance and improved the quality of the problem determination functionality of the DB2 Administration tools. The same trace insertion tool was later used to propagate a change that improved the performance of the DB2 Administration Tools by 15%.• Designed and implemented the Work In Progress component of the DB2 Warehouse Center.• Added features and fixed defects in the DB2 Control Center.• Devised a tool to locate string constants in source code for use in translation verification. This automated what was then a labour-intensive manual process.
  • Ibm
    Software Developer Intern, Db2 Administration Tools
    Ibm May 1997 - Aug 1998
    Armonk, New York, Ny, Us
    • Developed components of DB2 Control Center 5.0 and 5.2 in Java and C++ including Application Objects (User Defined Functions, Stored Procedures, etc.) and the Performance Configuration Wizard.• Developed automated GUI test cases in QA Partner.

Keith Mcdonald Skills

Jdbc Cvs Aix Unix Clearcase Linux Subversion Swing Solaris Java Ruby Tcp/ip C C++ Sql

Keith Mcdonald Education Details

  • University Of Waterloo
    University Of Waterloo
    Software Engineering
  • University Of New Brunswick
    University Of New Brunswick
    Computer Engineering

Frequently Asked Questions about Keith Mcdonald

What is Keith Mcdonald's role at the current company?

Keith Mcdonald's current role is Retired software engineer.

What is Keith Mcdonald's email address?

Keith Mcdonald's email address is ke****@****inc.com

What is Keith Mcdonald's direct phone number?

Keith Mcdonald's direct phone number is +141526*****

What schools did Keith Mcdonald attend?

Keith Mcdonald attended University Of Waterloo, University Of New Brunswick.

What skills is Keith Mcdonald known for?

Keith Mcdonald has skills like Jdbc, Cvs, Aix, Unix, Clearcase, Linux, Subversion, Swing, Solaris, Java, Ruby, Tcp/ip.

Free Chrome Extension

Find emails, phones & company data instantly

Find verified emails from LinkedIn profiles
Get direct phone numbers & mobile contacts
Access company data & employee information
Works directly on LinkedIn - no copy/paste needed
Get Chrome Extension - Free

Download 750 million emails and 100 million phone numbers

Access emails and phone numbers of over 750 million business users. Instantly download verified profiles using 20+ filters, including location, job title, company, function, and industry.