Add Scheduling Coordinator careers posting (#19)
Some checks failed
Deploy Static Site to S3 / deploy (push) Has been cancelled

* Add Scheduling Coordinator careers posting

Publish the Scheduling Coordinator listing covering preventive
maintenance scheduling across U.S. industrial facilities. Includes
the full job description, $70k-$80k pay band, benefits, and an
application form wired to the existing Basin endpoint with reCAPTCHA.

* Add scheduling-coordinator to sitemap and validThrough to all JobPostings

- Add /careers/scheduling-coordinator/ to sitemap.xml so it is
  discoverable by search engines and Google Jobs
- Add validThrough (2026-12-31) to all three JobPosting JSON-LD blocks
  to clear Search Console warnings and prevent stale jobs lingering
- Fix indentation nit on the traveling-maintenance sitemap entry

* Add CI caller for static-site reusable workflow

Calls the org ci-static.yaml reusable on pull_request, emitting the
ci / ci status context required by the main-branch ruleset.

Depends on Sea-Haven-Industries/.github#56 (ci-static.yaml) being merged
to .github@main; until then this run startup-fails.

* Set least-privilege permissions on CI caller

Add explicit 'permissions: contents: read' to the ci.yaml caller,
resolving CodeQL actions/missing-workflow-permissions (medium). The
ci-static reusable only needs read access for checkout + read-only checks.
(Also serves as the re-trigger push now that ci-static.yaml is on main.)
This commit is contained in:
Adam Moussa 2026-06-12 16:09:48 -04:00 • committed by GitHub
parent 705cf9ca82
commit f3955e8279
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 552 additions and 1 deletions

12
.github/workflows/ci.yaml vendored Normal file
View file

@ -0,0 +1,12 @@
name: CI
on:
pull_request:
branches: [main]
permissions:
contents: read
jobs:
ci:
uses: Sea-Haven-Industries/.github/.github/workflows/ci-static.yaml@main

View file

@ -192,6 +192,7 @@
"title": "Dispatcher",
"description": "Sea Haven Industries is looking for a highly organized, decisive Dispatcher to manage nationwide maintenance operations across industrial facilities. You'll be responsible for triaging and coordinating emergency and preventive work orders across the U.S., deciding in real time whether to deploy internal technicians or source external vendors.",
"datePosted": "2025-04-01",
"validThrough": "2026-12-31",
"employmentType": "FULL_TIME",
"hiringOrganization": {
"@type": "Organization",

View file

@ -248,6 +248,18 @@
<a href="/careers/dispatcher/" class="job-link">Learn more &rarr;</a>
</article>
<article class="job-card">
<h3>Scheduling Coordinator</h3>
<div class="job-salary">$70,000&ndash;$80,000 per year</div>
<div class="job-meta">
<span class="job-badge">Full-time</span>
<span class="job-meta-item">Ronkonkoma, NY 11779</span>
<span class="job-meta-item">Monday to Friday, 9am&ndash;5pm</span>
</div>
<p>A high-ownership role coordinating preventive maintenance work-order scheduling across industrial facilities nationwide&mdash;keeping jobs organized, tracked, and closed out clean.</p>
<a href="/careers/scheduling-coordinator/" class="job-link">Learn more &rarr;</a>
</article>
<article class="job-card">
<h3>Traveling Maintenance / Electrical Assistant</h3>
<div class="job-salary">$63,000&ndash;$80,000 per year</div>

View file

@ -0,0 +1,521 @@
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Scheduling Coordinator — Sea Haven Industries</title>
<meta name="description" content="Apply for the Scheduling Coordinator position at Sea Haven Industries. View job details and submit your application today.">
<meta property="og:title" content="Scheduling Coordinator — Sea Haven Industries">
<meta property="og:description" content="Apply for the Scheduling Coordinator position at Sea Haven Industries. View job details and submit your application today.">
<meta property="og:type" content="website">
<meta property="og:url" content="https://seahaven.com/careers/scheduling-coordinator/">
<meta property="og:site_name" content="Sea Haven Industries">
<meta property="og:image" content="https://seahaven.com/assets/images/seahaven-16.webp">
<meta name="twitter:card" content="summary_large_image">
<meta name="robots" content="index, follow, max-image-preview:large">
<link rel="canonical" href="https://seahaven.com/careers/scheduling-coordinator/">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicon-32.png">
<link rel="apple-touch-icon" sizes="192x192" href="/assets/images/favicon-192.png">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap">
<link href="https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/assets/css/main.css">
<style>
.grecaptcha-badge { visibility: hidden; }
/* ── Job Details ── */
.back-link {
display: inline-block;
font-size: 0.875rem;
font-weight: 500;
color: var(--rose);
margin-top: 1rem;
transition: color 0.15s;
}
.back-link:hover { color: var(--rose-dark); }
.job-details { background: var(--surface); }
.job-layout {
display: grid;
grid-template-columns: 1fr 340px;
gap: clamp(2.5rem, 5vw, 4rem);
align-items: start;
}
.job-content h2 {
font-family: var(--font-display);
font-size: clamp(1.25rem, 2.5vw, 1.75rem);
line-height: 1.2;
margin-bottom: 1.25rem;
margin-top: 2.5rem;
}
.job-summary {
font-size: 1.125rem;
font-weight: 600;
color: var(--text);
line-height: 1.6;
padding: 1.25rem 1.5rem;
margin-bottom: 2rem;
background: var(--rose-tint);
border-left: 3px solid var(--rose);
border-radius: 2px;
}
.job-content h2:first-child { margin-top: 0; }
.job-content p {
font-size: 0.9375rem;
color: var(--text-muted);
line-height: 1.7;
margin-bottom: 1rem;
}
.job-content ul {
list-style: none;
margin-bottom: 0.5rem;
}
.job-content ul li {
position: relative;
padding-left: 1.25rem;
margin-bottom: 0.75rem;
font-size: 0.9375rem;
color: var(--text-muted);
line-height: 1.7;
}
.job-content ul li::before {
content: '';
position: absolute;
left: 0;
top: 0.625rem;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--rose);
}
.job-note {
margin-top: 2rem;
padding: 1.25rem 1.5rem;
background: var(--rose-tint);
border-radius: 3px;
font-size: 0.9375rem;
color: var(--ink-mid);
line-height: 1.6;
}
/* ── Job Sidebar ── */
.job-sidebar {
position: sticky;
top: 100px;
background: var(--body-bg);
border: 1px solid var(--border);
border-radius: 3px;
padding: clamp(1.5rem, 3vw, 2rem);
}
.job-sidebar h3 {
font-family: var(--font-display);
font-size: 1.25rem;
margin-bottom: 1.5rem;
}
.sidebar-item {
margin-bottom: 1.25rem;
}
.sidebar-item-label {
font-size: 0.75rem;
font-weight: 600;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--text-muted);
margin-bottom: 0.25rem;
}
.sidebar-item-value {
font-size: 0.9375rem;
color: var(--text);
line-height: 1.5;
}
.sidebar-cta {
display: block;
width: 100%;
text-align: center;
margin-top: 0.75rem;
}
/* ── Application Form ── */
.apply-section { background: var(--warm-gray); }
.apply-section h2 {
margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
}
.apply-form {
max-width: 640px;
}
.form-group input[type="file"] {
width: 100%;
font-family: var(--font-body);
font-size: 0.875rem;
color: var(--text-muted);
padding: 0.75rem 0 0.75rem 0.75rem;
}
.form-group input[type="file"]::file-selector-button {
font-family: var(--font-body);
font-size: 0.8125rem;
font-weight: 600;
padding: 0.5rem 1.25rem;
border: 1px solid var(--border);
border-radius: 2px;
background: var(--surface);
color: var(--text);
cursor: pointer;
margin-right: 1rem;
transition: all 0.2s;
}
.form-group input[type="file"]::file-selector-button:hover {
border-color: var(--rose);
color: var(--rose);
}
/* ── Responsive (page-specific) ── */
@media (max-width: 1024px) {
.job-layout { grid-template-columns: 1fr 280px; }
}
@media (max-width: 768px) {
.job-layout { grid-template-columns: 1fr; }
.job-sidebar { position: static; order: -1; }
}
@media (max-width: 480px) {
.footer-bottom { flex-direction: column; align-items: flex-start; }
}
</style>
<script src="https://www.google.com/recaptcha/api.js?render=6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4"></script>
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "JobPosting",
"title": "Scheduling Coordinator",
"description": "We are seeking a highly organized and detail-oriented Scheduling Coordinator to manage preventive maintenance scheduling operations across industrial facilities throughout the United States. This role is responsible for coordinating work-order scheduling, tracking progress through completion, maintaining communication with internal teams and clients, and ensuring scheduling processes remain organized and efficient. This is a high-ownership role best suited for someone who thrives in fast-paced environments, enjoys coordinating multiple moving parts, and takes pride in staying organized and following through.",
"datePosted": "2025-04-01",
"validThrough": "2026-12-31",
"employmentType": "FULL_TIME",
"hiringOrganization": {
"@type": "Organization",
"name": "Sea Haven Industries",
"sameAs": "https://seahaven.com",
"logo": "https://seahaven.com/assets/images/seahaven-logo-nav-new.png"
},
"jobLocation": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"streetAddress": "710 Koehler Ave",
"addressLocality": "Ronkonkoma",
"addressRegion": "NY",
"postalCode": "11779",
"addressCountry": "US"
}
},
"baseSalary": {
"@type": "MonetaryAmount",
"currency": "USD",
"value": {
"@type": "QuantitativeValue",
"minValue": 70000,
"maxValue": 80000,
"unitText": "YEAR"
}
},
"jobBenefits": "401(k) matching, PTO, hybrid flexibility for strong candidates, optional overtime",
"applicantLocationRequirements": {
"@type": "Country",
"name": "US"
},
"directApply": true
}
</script>
</head>
<body>
<!-- ── Navigation ── -->
<header class="site-header scrolled" id="site-header">
<div class="container">
<nav class="nav-inner">
<a href="/" class="nav-logo">
<img src="/assets/images/seahaven-logo-nav-new.png" alt="Sea Haven Industries">
</a>
<ul class="nav-links">
<li><a href="/services/">Services</a></li>
<li><a href="/about/">About</a></li>
<li><a href="/careers/">Careers</a></li>
<li><a href="/social-accountability/">Accountability</a></li>
</ul>
<a href="/contact/" class="nav-cta">Get a Quote</a>
<button class="nav-hamburger" id="hamburger" aria-label="Open menu">
<span></span><span></span><span></span>
</button>
</nav>
</div>
</header>
<div class="mobile-menu" id="mobile-menu">
<button class="mobile-menu-close" id="menu-close">✕</button>
<a href="/services/">Services</a>
<a href="/about/">About</a>
<a href="/careers/">Careers</a>
<a href="/social-accountability/">Accountability</a>
<a href="/contact/">Contact</a>
</div>
<!-- ── Page Hero ── -->
<section class="page-hero">
<div class="container">
<nav class="breadcrumb" aria-label="Breadcrumb">
<a href="/">Home</a>
<span>/</span>
<a href="/careers/">Careers</a>
<span>/</span>
Scheduling Coordinator
</nav>
<h1>Scheduling Coordinator</h1>
<a href="/careers/" class="back-link">&larr; Back to All Positions</a>
</div>
</section>
<!-- ── Job Details ── -->
<section class="job-details section">
<div class="container">
<div class="job-layout">
<!-- Main Content -->
<div class="job-content">
<p class="job-summary">A high-ownership role coordinating preventive maintenance scheduling across industrial facilities nationwide&mdash;keeping work orders organized, on track, and closed out clean.</p>
<h2>Position Overview</h2>
<p>We are seeking a highly organized and detail-oriented Scheduling Coordinator to manage preventive maintenance scheduling operations across industrial facilities throughout the United States.</p>
<p>This role is responsible for coordinating work-order scheduling, tracking progress through completion, maintaining communication with internal teams and clients, and ensuring scheduling processes remain organized and efficient.</p>
<p>This is a high-ownership role best suited for someone who thrives in fast-paced environments, enjoys coordinating multiple moving parts, and takes pride in staying organized and following through.</p>
<h2>Benefits</h2>
<ul>
<li>401(k) with company matching</li>
<li>Paid Time Off (PTO)</li>
<li>Hybrid flexibility available for strong candidates</li>
<li>Optional overtime / additional shift opportunities</li>
<li>Opportunity to help build and improve operational processes</li>
</ul>
<h2>Key Responsibilities</h2>
<ul>
<li>Schedule and coordinate preventive maintenance (PM) work orders</li>
<li>Assign and manage work orders based on territories and scheduling needs</li>
<li>Track work orders from scheduling through completion</li>
<li>Conduct daily follow-ups on open, pending, and overdue items</li>
<li>Communicate with industrial sites and internal teams regarding updates, schedule changes, and ETAs</li>
<li>Ensure closing documentation and work-order details are completed accurately</li>
<li>Help resolve scheduling issues and support operational escalations</li>
<li>Maintain organization and visibility across multiple ongoing priorities</li>
</ul>
<h2>Qualifications</h2>
<p><strong>Required</strong></p>
<ul>
<li>2&ndash;3 years of experience in scheduling, logistics, operations coordination, dispatch support, or related fields preferred</li>
<li>Strong candidates with approximately 1 year of highly relevant experience may also be considered</li>
<li>Strong organizational and multitasking abilities</li>
<li>Excellent communication and follow-up skills</li>
<li>Ability to manage multiple priorities in a fast-paced environment</li>
<li>Ability to work independently and take ownership of responsibilities</li>
</ul>
<p><strong>Preferred</strong></p>
<ul>
<li>Transportation or logistics industry experience</li>
<li>Dispatch experience</li>
<li>Multi-site coordination experience</li>
<li>Customer service experience</li>
</ul>
<h2>Technical Skills</h2>
<p>Candidates should be comfortable with:</p>
<ul>
<li>Google Workspace (Google Sheets, Gmail, etc.)</li>
<li>Slack</li>
<li>General workplace systems and technology</li>
<li>Learning and adapting to new software platforms</li>
</ul>
<h2>Why Join Us?</h2>
<p>This is an opportunity to step into a high-impact role with meaningful ownership and visibility across operations. You&rsquo;ll help create structure, improve processes, and play an important role in supporting a growing team.</p>
<p>If you enjoy bringing organization to fast-moving environments and keeping operations running smoothly, we&rsquo;d love to hear from you.</p>
<div class="job-note">
People with a criminal record are encouraged to apply.
</div>
</div>
<!-- Sidebar -->
<aside class="job-sidebar">
<h3>Job Overview</h3>
<div class="sidebar-item">
<div class="sidebar-item-label">Job Type</div>
<div class="sidebar-item-value">Full-time</div>
</div>
<div class="sidebar-item">
<div class="sidebar-item-label">Pay</div>
<div class="sidebar-item-value">$70,000&ndash;$80,000/year</div>
</div>
<div class="sidebar-item">
<div class="sidebar-item-label">Schedule</div>
<div class="sidebar-item-value">Monday to Friday<br>Optional overtime available</div>
</div>
<div class="sidebar-item">
<div class="sidebar-item-label">Benefits</div>
<div class="sidebar-item-value">401(k) matching + PTO</div>
</div>
<div class="sidebar-item">
<div class="sidebar-item-label">Work Location</div>
<div class="sidebar-item-value">Ronkonkoma, NY (in person)<br>Hybrid flexibility for strong candidates</div>
</div>
<a href="#apply-section" class="btn btn-primary sidebar-cta">Apply Now</a>
</aside>
</div>
</div>
</section>
<!-- ── Application Form ── -->
<section class="apply-section section" id="apply-section">
<div class="container">
<h2 class="display-md">Apply For This Position</h2>
<div class="form-success" id="form-success" style="display:none; background: var(--rose-tint); border-left: 3px solid var(--rose); padding: 1.25rem 1.5rem; margin-bottom: 2rem; border-radius: 2px;">
<strong style="color: var(--text);">Application received!</strong>
<p style="color: var(--text-muted); margin-top: 0.25rem; font-size: 0.875rem;">Thank you for applying. We'll review your submission and get back to you soon.</p>
</div>
<form class="apply-form" action="https://usebasin.com/f/611f7992dbf9" method="POST" enctype="multipart/form-data">
<input type="hidden" name="_gotcha" style="display:none">
<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response">
<input type="hidden" name="g-recaptcha-version" value="v3">
<input type="hidden" name="_next" value="https://seahaven.com/careers/scheduling-coordinator/?submitted=true">
<div class="form-group">
<label for="apply-name">Name *</label>
<input type="text" id="apply-name" name="name" required placeholder="Your full name">
</div>
<div class="form-group">
<label for="apply-email">Email *</label>
<input type="email" id="apply-email" name="email" required placeholder="you@example.com">
</div>
<div class="form-group">
<label for="apply-phone">Phone *</label>
<input type="tel" id="apply-phone" name="phone" required placeholder="(555) 123-4567">
</div>
<div class="form-group">
<label for="apply-cover">Cover Letter</label>
<textarea id="apply-cover" name="cover_letter" placeholder="Tell us why you'd be a great fit..."></textarea>
</div>
<div class="form-group">
<label for="apply-resume">Resume *</label>
<input type="file" id="apply-resume" name="resume" required accept=".pdf,.doc,.docx">
</div>
<div class="form-submit">
<button type="submit" class="btn btn-primary">Submit Application</button>
</div>
</form>
</div>
</section>
<!-- ── Footer ── -->
<footer class="site-footer">
<div class="container">
<div class="footer-grid">
<div class="footer-brand">
<img src="/assets/images/seahaven-logo-footer-new.png" alt="Sea Haven Industries">
<p>Sea Haven Industries provides quality construction services tailored to your needs, ensuring excellence and reliability in every project. Our services can also be expanded to include other fields as needed.</p>
<div class="footer-social">
<a href="#" aria-label="LinkedIn">in</a>
<a href="#" aria-label="Facebook">f</a>
<a href="#" aria-label="Instagram">ig</a>
</div>
</div>
<div class="footer-col">
<h4>Services</h4>
<ul>
<li><a href="/services/">Electrical Work</a></li>
<li><a href="/services/">Plumbing</a></li>
<li><a href="/services/">HVACR Services</a></li>
<li><a href="/services/">Handyman Services</a></li>
<li><a href="/services/">Garage Door Repair</a></li>
</ul>
</div>
<div class="footer-col">
<h4>Company</h4>
<ul>
<li><a href="/about/">About Us</a></li>
<li><a href="/careers/">Careers</a></li>
<li><a href="/social-accountability/">Social Accountability</a></li>
<li><a href="/contact/">Contact</a></li>
</ul>
</div>
<div class="footer-col">
<h4>Contact</h4>
<div class="footer-contact-item"><strong>710 Koehler Ave</strong></div>
<div class="footer-contact-item">Ronkonkoma, NY 11779</div>
<div class="footer-contact-item"><a href="mailto:work-orders@seahaven.com" style="color: var(--rose);">work-orders@seahaven.com</a></div>
<div class="footer-contact-item"><strong>(631) 776-5102</strong></div>
</div>
</div>
<div class="footer-bottom">
<p>&copy;<script>document.write(new Date().getFullYear())</script> Sea Haven Industries. All rights reserved.</p>
<ul class="footer-bottom-links">
<li><a href="/privacy-policy/">Privacy Policy</a></li>
<li><a href="/terms-of-service/">Terms of Service</a></li>
</ul>
</div>
<p style="color: rgba(255,255,255,0.35); font-size: 0.75rem; margin-top: 0.75rem;">This site is protected by reCAPTCHA and the Google <a href="https://policies.google.com/privacy" style="color: rgba(255,255,255,0.45);">Privacy Policy</a> and <a href="https://policies.google.com/terms" style="color: rgba(255,255,255,0.45);">Terms of Service</a> apply.</p>
</div>
</footer>
<script>
const header = document.getElementById('site-header');
const onScroll = () => header.classList.toggle('scrolled', window.scrollY > 40);
window.addEventListener('scroll', onScroll, { passive: true });
onScroll();
const hamburger = document.getElementById('hamburger');
const mobileMenu = document.getElementById('mobile-menu');
const menuClose = document.getElementById('menu-close');
hamburger.addEventListener('click', () => mobileMenu.classList.add('open'));
menuClose.addEventListener('click', () => mobileMenu.classList.remove('open'));
mobileMenu.querySelectorAll('a').forEach(a => {
a.addEventListener('click', () => mobileMenu.classList.remove('open'));
});
// AJAX form submission
const applyForm = document.querySelector('.apply-form');
const successMsg = document.getElementById('form-success');
applyForm.addEventListener('submit', async (e) => {
e.preventDefault();
const btn = applyForm.querySelector('button[type="submit"]');
btn.textContent = 'Submitting...';
btn.disabled = true;
try {
const token = await grecaptcha.execute('6Les66kUAAAAANyLrgkl7iuN4JUpNlB5upaMovI4', { action: 'submit' });
document.getElementById('g-recaptcha-response').value = token;
const data = new FormData(applyForm);
const res = await fetch(applyForm.action, { method: 'POST', body: data, headers: { 'Accept': 'application/json' } });
if (res.ok) {
applyForm.reset();
applyForm.style.display = 'none';
successMsg.style.display = 'block';
successMsg.scrollIntoView({ behavior: 'smooth', block: 'center' });
} else {
throw new Error('Submission failed');
}
} catch (err) {
btn.textContent = 'Submit Application';
btn.disabled = false;
alert('Something went wrong. Please try again or email your resume to work-orders@seahaven.com');
}
});
</script>
</body>
</html>

View file

@ -192,6 +192,7 @@
"title": "Traveling Maintenance / Electrical Assistant",
"description": "A hands-on, travel-heavy role working directly alongside an experienced technician, supporting maintenance and electrical work across large-scale commercial and industrial facilities. Learn real trade skills fast, earn above-market pay, and be part of a small, no-nonsense team.",
"datePosted": "2025-04-01",
"validThrough": "2026-12-31",
"employmentType": "FULL_TIME",
"hiringOrganization": {
"@type": "Organization",

View file

@ -28,7 +28,11 @@
<loc>https://seahaven.com/careers/dispatcher/</loc>
<priority>0.6</priority>
</url>
<url>
<url>
<loc>https://seahaven.com/careers/scheduling-coordinator/</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://seahaven.com/careers/traveling-maintenance-assistant/</loc>
<priority>0.6</priority>
</url>