David McCarter

David McCarter

Microsoft MVP (Developer Technologies), Software Architect, Speaker, Trainer, Inventor, Mentor & Host of Rockin’ the Code World show

San Diego, California, United States


David McCarter is a highly experienced software engineer, author, and speaker who has been in the industry for over 20 years. He is a Microsoft MVP (Most Valuable Professional), solutions architect, Code Quality Zar, consultant, professional code reviewer, and editor-in-chief of dotNetTips.com.

As a prolific writer, David has contributed to programming magazines and published several books, including "Rock Your Code: Coding Standards for Microsoft .NET", "Rock Your Code: Code and App Performance for Microsoft .NET", and "Rock Your Career: Surviving the Technical Interview" available on Amazon.com. He is also a featured writer on the C# Corner website, where his articles have been read over 1.6 million times.

David is a sought-after speaker, known for his engaging and informative talks on programming and technical interviewing at user groups, colleges, high schools, and conferences such as NDC Conferences, BuildStuff, DevConnections, Copenhagen Developers Festival, C# Corner Conference (India), Code Camp, SQL Saturday, VSLive and many others. He also taught at the University of California San Diego for 18 years and runs his own software consulting company, McCarter Consulting. You can find upcoming speaking engagements by going to: http://bit.ly/dotnetdaverocks.

David hosts the weekly show Rockin' the Code World with dotNetDave on the Internet, where he interviews top tech leaders on their current passions and answers questions from viewers. He also hosts the Code Quality & Performance conference on C# Corner Live, which reaches over 65,000 software engineers.

David is a co-founder and director of the San Diego .NET Developers Group and has won the INETA Community Excellence Award for his involvement in the .NET community. He is also an inventor of a software printing system that was approved by the US Patent Office in May 2008.

In addition to his technical work, David is an award-winning photographer and guitarist and has worked with bands such as Queensryche, Buckcherry, Geoff Tate, Eric Johnson, Lit, Gary Hoey, P.O.D., and many others.

Overall, David is a multifaceted professional with a wealth of knowledge and experience in software engineering, writing, speaking, photography, and music.

His Microsoft MVP profile is located at: http://bit.ly/davidmvp
His GitHub repo is located at: https://github.com/RealDotNetDave
His NuGet packages are located at: https://www.nuget.org/profiles/davidmccarter


Area of Expertise

  • Information & Communications Technology


  • Programming
  • Programming Languages
  • .NET
  • .NET Patterns & Practices
  • ASP.NET Core Web API
  • .NET Migration to Azure
  • Code Quality
  • Performance Tunning
  • Azure
  • Azure Functions
  • Azure CosmosDB
  • Cosmos DB

Rock Your Code: Defensive Programming for Microsoft .NET

This session elevates your coding skills to the next level. Do you enjoy receiving bug tickets from QA? I didn’t think so. In this session, I will share the proven practices I've used throughout my programming career to ensure only rock-solid code gets checked into the source. You will learn my #1 mantra, along with over 13 rules, that help me write new features while avoiding maintenance mode hell. This is part of my series titled “Improving Code Quality… One Developer at A Time”.

Please take my Coding Standards Survey before attending this session: http://bit.ly/CodingStandards2020

This session elevates your coding skills to the next level. I will share the proven practices I've used throughout my programming career to ensure only rock-solid code gets checked into the source.

Röck Yoür Cäreer: Time-Tested Wisdom from a 30-Year Software Engineering Veteran

Join me for an enlightening conference session where I'll share insights from over three decades as a seasoned software engineer and 18 years as a university educator. Throughout my tech journey, I've maintained a thriving blog, authored software engineering books since the '90s, and received recognition as a patented inventor. Additionally, I've facilitated a dynamic user group for over two decades, earning numerous awards.

In this session, I'll offer invaluable lessons drawn from my extensive career experience. We'll explore crucial topics such as optimal learning strategies, achieving work-life balance, prioritizing well-being, navigating conferences, building community connections, and more.

Prepare to receive actionable advice that will propel your career forward and set you on a path to success. As someone deeply committed to empowering individuals in the tech industry, I'm dedicated to guiding you toward a brighter and more fulfilling professional journey. Remember to bring a notepad – you'll leave with a wealth of insights that will shape your career trajectory. Get ready to feel inspired and optimistic about the exciting future ahead in your tech career.

• Knowledge Sharing: Share invaluable insights and lessons learned from over three decades of experience as a software engineer and 18 years as a university educator.
• Skill Enhancement: Equip attendees with actionable advice and strategies to enhance their learning, achieve work-life balance, prioritize well-being, navigate conferences, and build community connections within the tech industry.
• Inspiration and Empowerment: Inspire and empower attendees to feel optimistic about their future in the tech industry and provide guidance to help them shape their career trajectory for success.

Join me for a session packed with insights from my extensive career as a software engineer and educator. Learn key strategies for success in tech, balance, and community building. Leave inspired and equipped for a bright professional future.

Röck Yoür Cöde: Application Globalization Workshop

In today's interconnected world, it is crucial that the applications we create function seamlessly across diverse languages and regions to serve a global user base effectively. However, many projects often overlook the importance of globalization, which can result in expensive and time-consuming efforts to retrofit the application at a later stage.

During this workshop, you will gain a comprehensive understanding of the significance of globalization and internationalization. You will learn the fundamentals of correctly coding numbers, date-time formats, and other variables to support multiple locales. Additionally, you will discover how to adapt the text that users encounter, which involves preparing resource files, refactoring strings into these resources, and applying appropriate string globalization techniques.

This hands-on workshop is designed to provide you with the necessary skills and knowledge to implement globalization in your work project within a 3-hour timeframe. Please ensure you bring your laptop and any relevant work projects, as you will immediately apply what you learn during the workshop to kickstart the work that will be continued back at your workplace.

You will also acquire insights into streamlining the process of string translations, making it fast, easy, and cost-effective. Finally, I will guide you in configuring the .editorConfig file to identify and resolve issues efficiently.

By the conclusion of this workshop, you will be well-prepared to cater to users from various countries, enhancing the accessibility and usability of your applications. It's important to note that this workshop is application-agnostic, and the knowledge you gain can be applied to any application type.

Pre-Workshop Instructions:
* Remember to bring your laptop and your work or personal projects for globalizing (mandatory).
* Ensure that you have Visual Studio 2022 installed and up to date.
* Make sure you have an Azure account ready for use.

Unleash Your Inner Rockstar: The 5 Steps to Dynamic Public Speaking!

Are you ready to take your career to the next level, leave a lasting impression in your workplace, or even venture into the world of conference speaking? Look no further! Drawing from over 30 years of experience in public speaking, I'm excited to guide you through the five straightforward steps to becoming a rockstar speaker and presenter.
If you were anything like me when I started, you might feel hesitant about addressing strangers and sparking their interest in a topic. But fear not! I've developed a unique approach to presenting that not only banishes nervousness but also consistently leaves audiences wanting more. Overcoming my initial apprehensions was pivotal in my career journey, leading me to achieve numerous milestones, including recognition as an award-winning developer, university educator, published author, blogger, patented inventor, and much more!
In this session, we'll dive deep into the five actionable steps you can begin implementing right away to kickstart your journey toward becoming a rockstar speaker. Additionally, I'll reveal my top tip for presenters, guaranteed to leave your audience craving more. Join me on this thrilling journey, and together, let's empower you to become a rockstar speaker and enhance your engineering prowess!

Learn 5 proven steps to master public speaking from a seasoned expert with 30+ years' experience. Discover the secrets to captivating audiences and advancing your career!

Röck Yoür Cöde: Seven Important Requirements for Any Successful Project

In this keynote session, I will share practical insights on how developers can ensure that their code meets the quality and performance standards required for successful production deployment. As many of us have experienced, the pressure to deliver results quickly can sometimes lead to compromises on code quality, which can result in technical debt and other problems down the line. While management may prioritize getting the product shipped and meeting business goals, it's essential for developers to be proactive in setting up the right architecture, standards, and practices to ensure that the app or system is reliable, scalable, and maintainable.

During this talk, I will cover seven critical subjects that every developer should consider when building apps that are meant for production use. These topics range from testing and debugging to documentation and deployment and will provide actionable tips that you can implement in your day-to-day work. By following these best practices, you can reduce the risk of errors, improve performance, and ultimately deliver better outcomes for your customers.

Join me for this session, part of the "Improving Code Quality… One Developer at A Time" series, and learn how to build apps that your customers will love and keep using!

1. To help developers understand the importance of code quality and performance in production deployment, and why it matters not just for end-users, but also for their own job security and professional growth.
2. To equip developers with practical knowledge and tips on how to improve code quality, testing, documentation, and deployment practices, which can help them build better software products that are more reliable, scalable, and maintainable.
3. To inspire developers to take ownership of their code quality and performance, and to lead by example in promoting best practices and standards within their team and organization, which can ultimately lead to better outcomes for customers, stakeholders, and the business.

Röck Yoür Cöde: Everything That Every .NET Developer Needs to Know About Disposable Types

Is your application or service sluggish? Is it devouring excessive memory? Are you frequently rebooting servers or services without understanding the cause? Look no further, as I have the answers! Having scrutinized millions of lines of code from Microsoft .NET projects, I can unequivocally state that the primary issue lies in mishandling disposable types.

With Microsoft .NET boasting a two-decade tenure, understanding the intricacies of memory management within the runtime is paramount for every developer. Ignorance in this area not only leads to performance bottlenecks but can also result in virtual memory leaks. Although .NET, since its inception in the late '90s, doesn't typically suffer from memory leaks in the traditional sense, it can inadvertently cause virtual memory leaks.

In this enlightening session, I will present tangible examples and metrics derived from real-world production scenarios. Failing to address these issues at the code's inception can prove exceedingly costly and time-consuming to rectify later if they are addressed at all. Key topics covered include proper disposal of objects, correct implementation of the IDisposable interface for custom types, and a demonstration of tools designed to identify these critical issues. Join me as we delve into the intricacies of .NET memory management and equip ourselves with the tools necessary to optimize performance and mitigate memory-related pitfalls.

This session is based on information from the 8th edition of Rock Your Code: Coding Standards for Microsoft .NET available on Amazon: https://bit.ly/CodingStandards8.

After attending this session, you will be a Code Shark™ just like me! This is a segment from my series titled “Improving Code Quality… One Developer at A Time”.

• Understanding Memory Management in .NET: This session aims to provide attendees with a comprehensive understanding of memory management principles within the .NET framework, including how memory is allocated, utilized, and deallocated.
• Identifying Common Pitfalls: The session will highlight common mistakes and pitfalls that developers may encounter when handling disposable types in .NET applications. Attendees will learn how these issues can impact performance and potentially lead to memory leaks.
• Equipping Developers with Tools and Techniques: Attendees will gain practical knowledge and tools to effectively address memory management issues in their .NET projects. This includes learning about the proper disposal of objects, implementing the IDisposable interface correctly, and utilizing tools for identifying and resolving memory-related issues in code.

Unlock the secrets of .NET memory management! Learn to avoid performance bottlenecks, memory leaks, and virtual memory issues with practical insights and tools.

Röck Yoür Cöde: Coding Standards for Microsoft .NET

Unlock the keys to greater productivity regardless of your programming expertise with Microsoft .NET 8. This session is your roadmap to crafting consistent, maintainable, and high-quality code. Delve into a comprehensive exploration of common coding pitfalls, optimal code styles, effective application setup, advanced type implementations, and beyond.

Discover invaluable code tips aimed at elevating your coding prowess, ensuring error-free execution, and maximizing application performance. Whether you're a novice or a seasoned developer, this session equips you with the knowledge and tools needed to excel in the dynamic landscape of .NET development.

This session is based on the 8th edition of Rock Your Code: Coding Standards for Microsoft .NET available on Amazon: https://bit.ly/CodingStandards8.

After attending this session, you will be a Code Shark™ just like me! This is part of my series titled “Improving Code Quality… One Developer at A Time”.

Here’s What Attendees Are Saying About This Session
• Joseph D. – I saw this presentation at the SoCal Code Camp and was a little shell-shocked about all the things that the other courses (Pluralsight, MVA, Channel 9) failed to state.

• Understanding Coding Standards: Learn the importance of coding standards in Microsoft .NET development and how they contribute to consistency, maintainability, and quality code.
• Applying Best Practices: Gain insights into common coding pitfalls and optimal code styles, and learn how to effectively set up applications for improved development efficiency.
• Enhancing Skills: Acquire advanced knowledge of type implementations and discover invaluable code tips to elevate coding prowess, ensuring error-free execution and maximizing application performance.

Learn how to elevate your coding with Microsoft .NET 8! This session provides insights into crafting high-quality, maintainable code, covering common pitfalls, optimal styles, setup, type implementations, and more. Boost your skills and efficiency for error-free, high-performance applications.

Rock Your Code: Code & App Performance for Microsoft .NET

Efficient code performance is paramount, especially when your back-end infrastructure is inundated with tens of thousands of requests per second, including microservices. Join this session to uncover the essential dos and don'ts for optimizing code performance in business software development. Discover techniques that can accelerate code execution by up to 98%, along with strategies for minimizing memory footprint. All demonstrations will be tailored to .NET 8.

This session will also feature insights from the latest performance metrics outlined in the fourth edition of "Rock Your Code: Code & App Performance for Microsoft", available on Amazon: https://bit.ly/DotNetCodePerf4.

This is part of my series “Improving Code Quality… One Developer at A Time”.

Here is what attendees are saying about this session:
• Bob R. – David gave an excellent presentation on code performance. He showed us how, why, and to what degree various coding methods improved the performance of an application. Lots of tips and tricks!
• Will S. – David McCarter rocked us with .NET performance tips and tricks! And you all should follow it, like a roadie!

• Understand essential dos and don'ts for optimizing code performance in Microsoft .NET environments.
• Learn techniques to accelerate code execution by up to 98% and reduce memory footprint.
• Gain insights into strategies tailored for .NET 8 to enhance business software development performance.

Unlock the secrets to turbocharging code performance in Microsoft .NET environments! Learn expert dos and don'ts for optimizing your business software development. Discover techniques to accelerate execution by up to 98% and reduce memory usage. Tailored for .NET 8.

Rock Your Technical Interview

Have you ever not gotten a job because you weren’t prepared for the interview? Would you like a big raise? Do you need motivation to rock your career? I’ve interviewed 100’s of software developers and will share my knowledge on how to survive, what we look for and even divulge some of the secrets we use during the process. Whether you are looking for a new position within your company or at a new company you need to attend this session. Included are crazy and strange interview stories from engineers just like you! Learn tips to get you started, working with recruiters, getting prepared, the technical interview and more. You will also learn what is the #1 question you need to ask during an interview… it’s a game changer!

Röck Yoür Cöde: Optimizing Microsoft .NET Code for High-Performance - Game Show Edition

Efficient code performance is paramount, especially when your back-end infrastructure handles tens of thousands of requests per second, including microservices. Optimizing performance is not just about speed; it's also about cost-efficiency when running apps and services in the cloud.

In .NET, there are numerous ways to achieve the same functionality, but which approach is the most performant? In this engaging session, you'll explore multiple methods to solve the same problem and challenge yourself to identify the most efficient solution. Compete with your peers for fabulous prizes while gaining valuable insights!

Join us for a fun and informative session where you will learn practical tips and techniques to enhance the performance of your .NET applications. You’ll leave with new knowledge that you can immediately apply to your projects. All demonstrations will be tailored to .NET 8, ensuring you're up-to-date with the latest advancements.

Don’t miss this opportunity to optimize your skills and improve your project performance.

This session will also feature insights from the latest performance metrics outlined in the fourth edition of "Rock Your Code: Code & App Performance for Microsoft", available on Amazon: https://bit.ly/DotNetCodePerf4.
This is a segment from my series, “Improving Code Quality… One Developer at A Time”.

Join us for "Rock Your Code: Game Show Edition!" where performance meets fun! Dive into the world of .NET 8 as we explore multiple ways to solve common coding challenges and identify the most efficient solutions. Compete with peers for fabulous prizes while learning practical techniques to boost your application's performance in high-demand cloud environments. Walk away with new skills and insights to rock your code like never before!

Granite State Code Camp 2022 Sessionize Event

November 2022 Manchester, New Hampshire, United States

Developers Conference 2019 - Mauritius Sessionize Event

April 2019 Moka, Mauritius

philly.NET Code Camp 2018.2 Sessionize Event

November 2018 Malvern, Arkansas, United States

Seattle CodeCamp 2018 Sessionize Event

September 2018 Seattle, Washington, United States

David McCarter

Microsoft MVP (Developer Technologies), Software Architect, Speaker, Trainer, Inventor, Mentor & Host of Rockin’ the Code World show

San Diego, California, United States


Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top