David Steinweg holds a Ph.D. in Communication from the University of South Florida. His dissertation established a critical theory concerning the process of musical improvisation. The dissertation was informed by a long history performing various musical styles, ranging from punk, ska and rock, to Western art music and jazz. David also studied the engineering side of music during his B.S. and M.A. degrees (from Missouri State University) by recording, engineering, and performing on various student projects, as well as teaching courses in studio techniques. Aside from academic study, he has worked on both on-set film production as well as post-production crews, serving as boom operator, mixer, sound designer, recordist, foley artist, music supervisor, and composer for student and professional film productions. Although he has little formal experience with live theatre production, he hopes to add to the cast and crew of Jobsite Theater by offering his knowledge of sound design within other forms of media. He continues to be inspired by his wife, family, and friends, which includes his 12 year old cat, Sir Orion Klumpafur.
As of 2025, we handle Season Tickets for the remainder of the main stage season directly with you. Submit the form below, and we’ll get back to you as soon as we can!
Contact Us
Jobsite Giving Challenge
Help with our most urgent 24 hours of fundraising Apr. 28-29
Ask about volunteering for shows, fundraisers, or just Jobsite in general.
Contact Us About A Show
We love your feedback. Share your thoughts about a show you saw!
#GivingTuesday
Tue., Dec. 2 is #GivingTuesday, a world-wide day of online giving, and that weekend, Sat., Dec. 6, we host our signature Jobsite Rocks! event. We hope fans will participate in one or both events that week, and share our story with your friends and associates.
Request tickets to be donated to your organization.
Technical Director Contact
Questions for our Technical Director.
Staged Readings Contact
To perform in a reading, have your script considered, or have other Staged Readings questions.
Contact The Artistic Director
Get in touch with Artistic Director David M. Jenkins for all business and production related questions and touring information.
Contact The Development Chair
Donating to fundraisers, plus any other grant or sponsorship questions.
Auditions Contact
Audition questions, scheduling, resumes and headshots. Also, read about our auditions for more info.
Donations & Support Contact
Be a Jobsite sponsor, send us something from our wishlist, advertising questions, etc.
Tickets Contact
General questions and information regarding tickets, group rates, discounts, and individual ticket donations.
Contact The Webmaster
Email our Online Producer regarding website questions, broken links and general kudos for all around groovy site design.
document.addEventListener('DOMContentLoaded', function () {
// Only run if Vimeo Player API is available or can be loaded
function initVimeoSync() {
if (typeof Vimeo === 'undefined' || !Vimeo.Player) {
// Try to load the Vimeo player API if it's not present
var script = document.createElement('script');
script.src = 'https://player.vimeo.com/api/player.js';
script.onload = setupVimeoCarouselSync;
document.head.appendChild(script);
} else {
setupVimeoCarouselSync();
}
}
function setupVimeoCarouselSync() {
// Find all Vimeo iframes inside the specific carousel
var carousel = document.querySelector('.vimeo-sync-carousel');
if (!carousel) return;
var vimeoIframes = carousel.querySelectorAll('iframe[src*="vimeo.com"]');
if (!vimeoIframes.length) return;
// Create Vimeo player instances
var players = [];
vimeoIframes.forEach(function (iframe) {
try {
var player = new Vimeo.Player(iframe);
player.on('play', function () {
// Pause all OTHER players when this one starts playing
players.forEach(function (otherPlayer) {
if (otherPlayer !== player) {
otherPlayer.pause().catch(function () {
// Ignore errors (e.g., not ready yet)
});
}
});
});
players.push(player);
} catch (e) {
// silently ignore if something isn't a valid Vimeo iframe
}
});
}
initVimeoSync();
// In case Elementor loads content via AJAX (popups, etc.), re-run when DOM changes
document.addEventListener('elementor/popup/show', initVimeoSync);
});