THE COMPLETE RECORD
This profile is part of the recursive Fight Atlas graph. Open any opponent below to load that athlete’s complete professional career, then continue through every linked opponent without returning to a third-party record page.
EVERY RECORDED BOUT
Complete professional fight history, including competition before and outside UFC. Use the controls to isolate an opponent, promotion, method or result.
| Result | Date / record | Opponent | Event | Finish details |
|---|---|---|---|---|
| L | 19–10–1 after bout | Brian EbersoleView status and profile → | MMA Mexico 3 - Transicion | Decision (Unanimous)Round 3 Time 5:00 Referee Victor Davila |
| W | 19–9–1 after bout | Mike BerardiView status and profile → | RITC 28 - Rage in the Cage 28 | TKO (Corner Stoppage)Round 2 Time 3:00 Referee Not listed |
| L | 18–9–1 after bout | Antonio McKeeView status and profile → | GC 3 - Showdown at Soboba | Decision (Unanimous)Round 2 Time 5:00 Referee Not listed |
| L | 18–8–1 after bout | Yves EdwardsView status and profile → | Bushido 1 - Bushido 1 | Submission (Armbar)Round 1 Time 1:15 Referee Not listed |
| D | 18–7–1 after bout | Brian GuidryView status and profile → | SFC - Submission Fighting Championships 12 | DrawRound 2 Time 10:00 Referee Not listed |
| W | 18–7–0 after bout | John BorsosView status and profile → | AFC - Absolute Fighter Challenge | TKO (Knee)Round 2 Time N/A Referee Not listed |
| W | 17–7–0 after bout | Shane DunnView status and profile → | WEF - New Blood Conflict | TKO (Submission to Punches)Round 2 Time 2:59 Referee Not listed |
| W | 16–7–0 after bout | Edwin DeweesView status and profile → | RITC 19 - Rage in the Cage 19 | Submission (Armbar)Round 2 Time 1:52 Referee Not listed |
| W | 15–7–0 after bout | Alex SharpsView status and profile → | RITC Tucson 2 - Rage in the Cage Tucson 2 | TKO (Punches)Round 1 Time 0:52 Referee Not listed |
| W | 14–7–0 after bout | Baron WilliamsView status and profile → | RITC 18 - Rage in the Cage 18 | Submission (Choke)Round 1 Time 0:46 Referee Not listed |
| L | 13–7–0 after bout | Victor HunsakerView status and profile → | BOTB - Best of the Best | Submission (Ankle Lock)Round 1 Time N/A Referee Not listed |
| W | 13–6–0 after bout | Chris CrockettView status and profile → | RITC 15 - Rage in the Cage 15 | Submission (Armlock)Round 1 Time 2:35 Referee Not listed |
| L | 12–6–0 after bout | Homer MooreView status and profile → | RITC 10 - Rage in the Cage 10 | Decision (3-1)Round 3 Time 3:00 Referee Not listed |
| L | 12–5–0 after bout | Toby ImadaView status and profile → | NG 13 - Neutral Grounds 13 | Decision (Unanimous)Round 3 Time 5:00 Referee Not listed |
| W | 12–4–0 after bout | Steve HoculiView status and profile → | RITC 7 - Rage in the Cage 7 | TKO (Corner Stoppage)Round 2 Time 3:00 Referee Not listed |
| L | 11–4–0 after bout | Nate MarquardtView status and profile → | BRI 4 - Bas Rutten Invitational 4 | Submission (Rear-Naked Choke)Round 1 Time 15:01 Referee Not listed |
| W | 11–3–0 after bout | Ben SchilslerView status and profile → | BRI 4 - Bas Rutten Invitational 4 | TKO (Submission to Punches)Round 1 Time 0:31 Referee Not listed |
| W | 10–3–0 after bout | Adam JohnsonView status and profile → | BRI 4 - Bas Rutten Invitational 4 | Submission (Armbar)Round 1 Time 0:36 Referee Not listed |
| L | 9–3–0 after bout | Shannon RitchView status and profile → | AFO - Absolute Face Off | Submission (Armbar)Round 1 Time 0:13 Referee Not listed |
| W | 9–2–0 after bout | Tim McQuintyView status and profile → | RITC 6 - Rage in the Cage 6 | Submission (Armbar)Round 3 Time 2:22 Referee Not listed |
| W | 8–2–0 after bout | John BrennanView status and profile → | RITC 5 - Rage in the Cage 5 | TKO (Submission to Punches)Round 2 Time 2:21 Referee Not listed |
| L | 7–2–0 after bout | Shannon RitchView status and profile → | ASA - Arizona Shootfighting Association | Submission (Rear-Naked Choke)Round 1 Time 1:01 Referee Not listed |
| L | 7–1–0 after bout | Allan SullivanView status and profile → | BRI 2 - Bas Rutten Invitational 2 | Submission (Guillotine Choke)Round 1 Time 6:42 Referee John Perretti |
| W | 7–0–0 after bout | Jens PulverView status and profile → | BRI 2 - Bas Rutten Invitational 2 | Submission (Toe Hold)Round 1 Time 11:57 Referee John Perretti |
| W | 6–0–0 after bout | John AlessioView status and profile → | BRI 2 - Bas Rutten Invitational 2 | Submission (Rear-Naked Choke)Round 1 Time 8:32 Referee John Perretti |
| W | 5–0–0 after bout | Ronnie MichaelsView status and profile → | RITC 4 - Rage in the Cage 4 | Decision (Split)Round 3 Time 3:00 Referee Not listed |
| W | 4–0–0 after bout | Doug EvansView status and profile → | BRI 1 - Bas Rutten Invitational 1 | Submission (Rear-Naked Choke)Round 1 Time 5:38 Referee John Perretti |
| W | 3–0–0 after bout | Ray MoralesView status and profile → | BRI 1 - Bas Rutten Invitational 1 | Submission (Armbar)Round 1 Time 1:58 Referee John Perretti |
| W | 2–0–0 after bout | Martin SplichalView status and profile → | BRI 1 - Bas Rutten Invitational 1 | TKO (Punches)Round 1 Time 14:06 Referee John Perretti |
| W | 1–0–0 after bout | Vince SalazarView status and profile → | BRI 1 - Bas Rutten Invitational 1 | Submission (Guillotine Choke)Round 1 Time 4:22 Referee John Perretti |
Fight Atlas republishes factual bout results, not source articles or photography. Belt markers appear only when championship status is confirmed by an official promotion source; unverified bouts are never inferred. The matched source name for this profile is David Harris.
Verify source record ↗Every verified opponent opens another full career
30 professional bout rows are displayed from the source record. 29 unique opponent identities have a stable source ID and an internal Fight Atlas route. Every opponent row has a verified identity link.
Source and correction standard
The complete professional history is retrieved from the established public fight-record source and cached for up to 24 hours. Current-roster status remains separate from historical career data and does not imply retirement.