This registration page may not work well in Internet Explorer. Please use a different browser to complete your registration.

Recruiting Best Practices in a Candidate’s Market

September 23, 2026 12:00 PM - 1:15 PM (EDT)

Description

Finding and retaining talented professionals continues to be one of the biggest challenges facing engineering and environmental consulting firms. While competition for experienced staff remains strong, firms can improve their recruiting results by taking a more intentional, organized, and persistent approach to identifying, engaging, and securing top candidates. 

Join Rich Friedman of Friedman & Partners for this practical, industry-focused webinar exploring proven recruiting strategies for A/E/C and environmental consulting firms. Drawing on more than 30 years of recruiting experience in the industry, Rich will share strategies firms can use to strengthen every stage of the hiring process—from defining the position and identifying candidates to conducting effective interviews and developing offers that get to “yes.” 

Topics will include: 

  • Why it’s still a candidate’s market
  • Building effective position descriptions and interview guides
  • Finding and identifying qualified candidates
  • Strengthening candidate outreach and communication
  • Preparing for consistent, effective interviews
  • Crafting competitive offers while protecting salary structures
  • Recognizing candidate red flags

Whether your firm is actively hiring or looking to strengthen its recruiting approach for future workforce needs, this webinar will provide practical ideas and actionable strategies to help improve recruiting effectiveness. 

Date: Wednesday, September 23, 2026
Time: 12:00–1:15 p.m. ET
Location: Virtual via Microsoft Teams
PDHs: 1 PDH

Registration Fees 

  • ACEC/Michigan Members: $65 
  • Non-Members: $85

Contact Information

American Council of Engineering Companies of Michigan
Name: Troy Hagon
Phone: (517) 580-0334
Email: thagon@acecmi.org
We're sorry. No registrations are currently available. You may wish to contact the event organizer for assistance.
{{ vm.EventInfo.ErrorMessage }}

Select Registration Options

Edit
{{vm.regWarningMessage}}
{{vm.regAlertMessage}}

Exhibitor Opportunities

Name Price Att Qty
{{ et.Name }}
{{ et.IncludedAttendeesCount }} {{ et.AttendeeRegType.RemainingPerType }} Remaining {{ et.AttendeeRegType.RemainingPerType * -1 }} on Waiting List {{ et.AttendeeRegType.RemainingPerType * -1 }} Over Limit
{{ et.Remaining }} Remaining
Sold out

Attendee Registration Options Total Remaining: {{ vm.EventInfo.VacantSpotsPerEvent }}

Waiting List Available
{{ vm.stats.totalAttendeesCount }} Registered , {{ vm.OverallOverAmount() }} on Waiting List , {{ vm.OverallOverAmount() }} Over Limit
Name Price Qty
{{ rt.Name }}
{{ rt.IsMemberOnly ? ' (Members Only)' : '' }}
Limit: {{ rt.LimitPerPurchase }}
Included Attendees: {{ rt.AttendeesCountPerOneRegistration }}
{{rt.Price | currency }} {{rt.PriceAfterDiscount | currency }} {{ rt.Price | currency }}
{{ rt.RemainingPerType }} Remaining
{{ rt.RemainingPerType * -1 }} on Waiting List
{{ rt.RemainingPerType * -1 }} Over Limit

{{'[[Sponsorship]] Opportunities' | localizeString:'['}}

Name Price Att Qty
{{ st.Name }}
{{ st.IncludedAttendeesCount }} {{ st.AttendeeRegType.RemainingPerType }} Remaining {{ st.AttendeeRegType.RemainingPerType * -1 }} on Waiting List {{ st.AttendeeRegType.RemainingPerType * -1 }} Over Limit
{{ st.Remaining }} Remaining
Sold out
Continue

Registration Information

Edit

Exhibitor - {{er.Name}}

Exhibitor #{{ $index + 1 }}

Total: {{exhibitor.TotalPrice | currency}} {{ exhibitor.IsBenefit ? "- Included as a Benefit" : exhibitor.IsDiscounted ? "- Discounts have been applied" : ""}}
Exhibitor Directory
Primary Contact
Booth Information
Additional Information
Additional Items

Attendee - {{er.Name}}

{{ att.getAttendeeTerm(vm.EventSettings.AdditionalAttendeesTerm, $index) }} #{{ att.getAttendeeIndexDisplay(vm.EventSettings.AdditionalAttendeesTerm, $index) }}

Total: {{att.TotalPrice | currency}} {{att.DiscountMessage | localizeString:'['}}
A No Show fee is being assessed for {{fee.EventName}} on {{fee.EventStartLocalTimeString}}.

Address


Phone

Additional Information
Event Sessions

{{slot.Name}}

{{$select.selected.SessionName}}
(full)
{{slot.SelectedSession.SessionDescription + (slot.HasFees ? " (Price: " + (slot.PriceTotal | currency) +")" : "")}}

Additional Items

{{'[[Sponsorship+]]' | localizeString:'['}} - {{er.Name}}

{{'[[Sponsor]]' | localizeString:'['}} #{{ $index + 1 }}

Total: {{sponsor.Price | currency}}
Continue

Additional Items

Edit

{{(vm.EventInfo.Terms.Donation || "Fundraising") + " Opportunities"}}

Campaign Name Item Description Amount
{{item.CampaignName}} {{item.Description + (item.ShowMinimumPrice && item.MinimumPrice ? " (Min: " + item.MinimumPrice + ")" : "")}}
Continue

Complete Registration

Edit

Terms & Conditions

No Show Policy

{{ vm.EventInfo.EventSettings.NoShowPolicy }}

Enter Promo Code

Billing Contact

Registration Protection

This event is synced to a webinar so no confirmation email will be sent from GrowthZone.

Thank you to our {{'[[Sponsor+]]' | localizeString:'['}}