GCGovComp.app

City of Baltimore / General Services (302)

Agency file

General Services (302)

Source file: City of Baltimore — Employee Salaries / ingested Jun 19, 2026

The General Services (302) provides central administrative services — personnel, procurement, facilities, and internal operations.

In 2020, this agency had 80 employees with median total compensation of $56,825; the highest distinct record was $122,685.

Year
2020
Total payroll
$4.7M
Employees
80
Median total
$56,825
Highest record
$122,685

What the records show

Compensation analytics

These summaries compare pay within the agency before listing individual records.

Salary distribution

How 2020 total compensation is spread across the 80 employees. Each bar is a pay range; taller bars mean more people earn in that range. The amber line marks the median ($56,825) — half earn less, half more. The far-right bar collects the highest earners.

Average pay composition

  • Base$58,693 (100%)
  • Overtime$0 (0%)
  • Other$0 (0%)
  • Benefits$0 (0%)

What an average paycheck here is made of — base salary versus overtime, other pay (bonuses, allowances), and benefits. A large overtime or other-pay share means take-home often exceeds base salary.

Pay percentiles

10th
25th
Median
75th
90th
$34,356
$47,379
$56,825
$69,079
$92,050

The pay ladder for this department. Someone at the 90th percentile earns $92,050 — more than 90% of the department; the 10th percentile earns $34,356. The shaded band is the middle half of employees (25th–75th percentile).

Largest job titles

The most common job titles in this department by headcount, with the median total compensation for each. Click a title to see everyone who holds it.

Trend

Year over year

How this department's total payroll, headcount, and median pay changed across the 7 published years.

YearTotal payrollEmployeesMedian pay
2013
$5.5M
107
$48,425
2015
$5.2M
5.0%
97
9.3%
$50,069
3.4%
2016
$5.1M
3.0%
95
2.1%
$50,698
1.3%
2017
$4.4M
13.0%
87
8.4%
$47,317
6.7%
2018
$4.9M
10.9%
87
±0%
$52,036
10.0%
2019
$4.8M
2.8%
77
11.5%
$56,906
9.4%
2020
$4.7M
1.2%
80
3.9%
$56,825
0.1%

Compare

Similar departments

Departments elsewhere with the most similar mix of roles — a proxy for the same kind of agency, matched by workforce composition rather than name. Pay is not cost-of-living adjusted.

Record list

Employees

Page 1

Alvin Clark Iii

Automotive Lead Mechanic/General Services (302)

2020 total comp
$69,079
Base pay
$69,079
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$69,079
Hire date
2005-09-01

Source-specific fields

Agencyid
A85
Annualsalary
57919
Employee ID
140486

Alvin Clark Iii holds the role of Automotive Lead Mechanic at General Services (302). They have served since 2005 (about 15 years). In 2020, their total compensation was $69,079.

Scott Edmonston

Automotive Mechanic/General Services (302)

2016 total comp
$69,064
Base pay
$69,064
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$69,064
Hire date
1989-04-27

Source-specific fields

Agencyid
A85
Annualsalary
47242
Employee ID
86333

Scott Edmonston is a Automotive Mechanic at General Services (302). Their tenure dates to 1989, about 27 years. 2016 total compensation came to $69,064.

Mark Cox

Automotive Mechanic/General Services (302)

2020 total comp
$68,450
Base pay
$68,450
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$68,450
Hire date
1984-11-08

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
140985

At General Services (302), Mark Cox serves as a Automotive Mechanic. Hired in 1984, they have about 36 years of service. Their 2020 pay totaled $68,450.

John Harrison

Automotive Lead Mechanic/General Services (302)

2020 total comp
$67,625
Base pay
$67,625
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$67,625
Hire date
1986-11-18

Source-specific fields

Agencyid
A85
Annualsalary
64667
Employee ID
144246

John Harrison is a Automotive Lead Mechanic at General Services (302). They have served since 1986 (about 34 years). 2020 total compensation came to $67,625.

Kevin Brown

Automotive Mechanic/General Services (302)

2020 total comp
$67,474
Base pay
$67,474
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$67,474
Hire date
1980-09-08

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
139488

Kevin Brown works as a Automotive Mechanic for General Services (302). Hired in 1980, they have about 40 years of service. Kevin earned $67,474 in 2020.

William Amberman

Automotive Mechanic/General Services (302)

2015 total comp
$65,921
Base pay
$65,921
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$65,921
Hire date
1981-08-18

Source-specific fields

Agencyid
A85
Annualsalary
47560
Employee ID
68876

William Amberman holds the role of Automotive Mechanic at General Services (302). Their tenure dates to 1981, about 34 years. In 2015, their total compensation was $65,921.

Audrey Clark

Automotive Lead Mechanic/General Services (302)

2019 total comp
$64,350
Base pay
$64,350
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$64,350
Hire date
2014-07-10

Source-specific fields

Agencyid
A85
Annualsalary
50326
Employee ID
126030

Audrey Clark holds the role of Automotive Lead Mechanic at General Services (302). Their tenure dates to 2014, about 5 years. In 2019, their total compensation was $64,350.

Michael Umberger

Automotive Maintenance Supervisor I/General Services (302)

2017 total comp
$63,615
Base pay
$63,615
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$63,615
Hire date
2015-08-20

Source-specific fields

Agencyid
A85
Annualsalary
47947
Employee ID
108664

Michael Umberger works as a Automotive Maintenance Supervisor I for General Services (302). Their tenure dates to 2015, about 2 years. Michael earned $63,615 in 2017.

Bryan Smith

Automotive Mechanic/General Services (302)

2020 total comp
$63,451
Base pay
$63,451
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$63,451
Hire date
1987-03-12

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
151626

Bryan Smith is a Automotive Mechanic at General Services (302). Hired in 1987, they have about 33 years of service. 2020 total compensation came to $63,451.

James Nossel

Automotive Mechanic/General Services (302)

2015 total comp
$62,978
Base pay
$62,978
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$62,978
Hire date
1977-03-10

Source-specific fields

Agencyid
A85
Annualsalary
47560
Employee ID
77974

At General Services (302), James Nossel serves as a Automotive Mechanic. They have served since 1977 (about 38 years). Their 2015 pay totaled $62,978.

Stephen Jones Sr

Automotive Lead Mechanical/General Services (302)

2016 total comp
$62,594
Base pay
$62,594
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$62,594
Hire date
1988-09-22

Source-specific fields

Agencyid
A85
Annualsalary
53115
Employee ID
89339

Stephen Jones Sr works as a Automotive Lead Mechanical for General Services (302). They have served since 1988 (about 28 years). Stephen earned $62,594 in 2016.

John Holthaus

Automotive Mechanic/General Services (302)

2013 total comp
$62,556
Base pay
$62,556
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$62,556
Hire date
1975-06-09

Source-specific fields

Agencyid
A85
Annualsalary
45709
Employee ID
38744

At General Services (302), John Holthaus serves as a Automotive Mechanic. Their tenure dates to 1975, about 38 years. Their 2013 pay totaled $62,556.

Alvin Clark Iii

Automotive Lead Mechanical/General Services (302)

2016 total comp
$62,512
Base pay
$62,512
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$62,512
Hire date
2005-09-01

Source-specific fields

Agencyid
A85
Annualsalary
48846
Employee ID
85021

Alvin Clark Iii is a Automotive Lead Mechanical at General Services (302). Hired in 2005, they have about 11 years of service. 2016 total compensation came to $62,512.

William Davis El

Automotive Lead Mechanical/General Services (302)

2016 total comp
$62,350
Base pay
$62,350
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$62,350
Hire date
1986-12-18

Source-specific fields

Agencyid
A85
Annualsalary
53115
Employee ID
85685

At General Services (302), William Davis El serves as a Automotive Lead Mechanical. Hired in 1986, they have about 30 years of service. Their 2016 pay totaled $62,350.

John Harrison

Automotive Lead Mechanical/General Services (302)

2016 total comp
$61,727
Base pay
$61,727
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$61,727
Hire date
1986-11-18

Source-specific fields

Agencyid
A85
Annualsalary
53115
Employee ID
88093

At General Services (302), John Harrison serves as a Automotive Lead Mechanical. They have served since 1986 (about 30 years). Their 2016 pay totaled $61,727.

Terrence Washington

Automotive Mechanic/General Services (302)

2020 total comp
$61,434
Base pay
$61,434
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$61,434
Hire date
2016-04-14

Source-specific fields

Agencyid
A85
Annualsalary
47907
Employee ID
153474

Terrence Washington works as a Automotive Mechanic for General Services (302). They have served since 2016 (about 4 years). Terrence earned $61,434 in 2020.

Ted Toscheff

Automotive Mechanic/General Services (302)

2020 total comp
$60,935
Base pay
$60,935
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$60,935
Hire date
1979-10-22

Source-specific fields

Agencyid
A85
Annualsalary
56050
Employee ID
152874

Ted Toscheff is a Automotive Mechanic at General Services (302). Their tenure dates to 1979, about 41 years. 2020 total compensation came to $60,935.

Richard Smith

Laborer (Hourly)/General Services (302)

2019 total comp
$60,470
Base pay
$60,470
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$60,470
Hire date
2008-08-18

Source-specific fields

Agencyid
A85
Annualsalary
33271
Employee ID
135110

Richard Smith works as a Laborer (Hourly) for General Services (302). Hired in 2008, they have about 11 years of service. Richard earned $60,470 in 2019.

Bennie Crosson

Automotive Mechanic/General Services (302)

2020 total comp
$60,285
Base pay
$60,285
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$60,285
Hire date
1984-01-03

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
141080

Bennie Crosson holds the role of Automotive Mechanic at General Services (302). They have served since 1984 (about 36 years). In 2020, their total compensation was $60,285.

Michael Smith

Automotive Mechanic/General Services (302)

2020 total comp
$59,939
Base pay
$59,939
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$59,939
Hire date
2009-06-18

Source-specific fields

Agencyid
A85
Annualsalary
49344
Employee ID
151750

At General Services (302), Michael Smith serves as a Automotive Mechanic. Their tenure dates to 2009, about 11 years. Their 2020 pay totaled $59,939.

Frank Burch

Automotive Mechanic/General Services (302)

2020 total comp
$59,848
Base pay
$59,848
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$59,848
Hire date
2009-03-12

Source-specific fields

Agencyid
A85
Annualsalary
49344
Employee ID
139710

Frank Burch holds the role of Automotive Mechanic at General Services (302). They have served since 2009 (about 11 years). In 2020, their total compensation was $59,848.

Clarence Ward

Automotive Mechanic/General Services (302)

2020 total comp
$59,623
Base pay
$59,623
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$59,623
Hire date
2010-06-03

Source-specific fields

Agencyid
A85
Annualsalary
49344
Employee ID
153389

At General Services (302), Clarence Ward serves as a Automotive Mechanic. Their tenure dates to 2010, about 10 years. Their 2020 pay totaled $59,623.

William Crawford Jr

Automotive Mechanic/General Services (302)

2020 total comp
$59,483
Base pay
$59,483
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$59,483
Hire date
1986-04-03

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
141012

William Crawford Jr holds the role of Automotive Mechanic at General Services (302). Their tenure dates to 1986, about 34 years. In 2020, their total compensation was $59,483.

Ronald Thomas

Automotive Mechanic/General Services (302)

2020 total comp
$59,153
Base pay
$59,153
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$59,153
Hire date
1988-12-05

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
152645

Ronald Thomas holds the role of Automotive Mechanic at General Services (302). They have served since 1988 (about 32 years). In 2020, their total compensation was $59,153.

Derrick Brown

Automotive Mechanic/General Services (302)

2016 total comp
$58,751
Base pay
$58,751
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$58,751
Hire date
1984-02-06

Source-specific fields

Agencyid
A85
Annualsalary
48507
Employee ID
84194

At General Services (302), Derrick Brown serves as a Automotive Mechanic. Hired in 1984, they have about 32 years of service. Their 2016 pay totaled $58,751.

Nathaniel Mcgee

Automotive Mechanic/General Services (302)

2020 total comp
$58,274
Base pay
$58,274
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$58,274
Hire date
1988-11-03

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
147790

Nathaniel Mcgee holds the role of Automotive Mechanic at General Services (302). Their tenure dates to 1988, about 32 years. In 2020, their total compensation was $58,274.

Joseph Schmidt

Automotive Lead Mechanic/General Services (302)

2017 total comp
$58,106
Base pay
$58,106
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$58,106
Hire date
2009-06-18

Source-specific fields

Agencyid
A85
Annualsalary
47423
Employee ID
107090

Joseph Schmidt is a Automotive Lead Mechanic at General Services (302). They have served since 2009 (about 8 years). 2017 total compensation came to $58,106.

Leonard Foster

Automotive Mechanic/General Services (302)

2020 total comp
$57,979
Base pay
$57,979
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$57,979
Hire date
1997-05-22

Source-specific fields

Agencyid
A85
Annualsalary
52218
Employee ID
142750

Leonard Foster works as a Automotive Mechanic for General Services (302). They have served since 1997 (about 23 years). Leonard earned $57,979 in 2020.

Derek Clayborne

Automotive Mechanic/General Services (302)

2018 total comp
$57,882
Base pay
$57,882
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$57,882
Hire date
1998-11-16

Source-specific fields

Agencyid
A85
Annualsalary
47450
Employee ID
112382

Derek Clayborne is a Automotive Mechanic at General Services (302). Their tenure dates to 1998, about 20 years. 2018 total compensation came to $57,882.

William Stokeling Iii

Automotive Mechanic/General Services (302)

2020 total comp
$57,830
Base pay
$57,830
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$57,830
Hire date
1997-12-15

Source-specific fields

Agencyid
A85
Annualsalary
52218
Employee ID
152155

William Stokeling Iii is a Automotive Mechanic at General Services (302). They have served since 1997 (about 23 years). 2020 total compensation came to $57,830.

Matthew Shelley

Automotive Mechanic/General Services (302)

2020 total comp
$57,464
Base pay
$57,464
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$57,464
Hire date
2007-10-25

Source-specific fields

Agencyid
A85
Annualsalary
49344
Employee ID
151299

At General Services (302), Matthew Shelley serves as a Automotive Mechanic. Their tenure dates to 2007, about 13 years. Their 2020 pay totaled $57,464.

John Darden

Automotive Mechanic/General Services (302)

2020 total comp
$57,212
Base pay
$57,212
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$57,212
Hire date
2016-11-10

Source-specific fields

Agencyid
A85
Annualsalary
47907
Employee ID
141274

John Darden holds the role of Automotive Mechanic at General Services (302). Hired in 2016, they have about 4 years of service. In 2020, their total compensation was $57,212.

Kurian Mathew

Automotive Mechanic/General Services (302)

2020 total comp
$57,124
Base pay
$57,124
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$57,124
Hire date
1986-03-27

Source-specific fields

Agencyid
A85
Annualsalary
55092
Employee ID
147488

Kurian Mathew is a Automotive Mechanic at General Services (302). They have served since 1986 (about 34 years). 2020 total compensation came to $57,124.

Dennis Shelford

Automotive Mechanic/General Services (302)

2020 total comp
$56,966
Base pay
$56,966
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$56,966
Hire date
2016-04-14

Source-specific fields

Agencyid
A85
Annualsalary
47907
Employee ID
151294

Dennis Shelford holds the role of Automotive Mechanic at General Services (302). They have served since 2016 (about 4 years). In 2020, their total compensation was $56,966.

Mark Kirkpatrick

Automotive Mechanic/General Services (302)

2018 total comp
$56,951
Base pay
$56,951
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$56,951
Hire date
1985-04-08

Source-specific fields

Agencyid
A85
Annualsalary
51479
Employee ID
116904

Mark Kirkpatrick works as a Automotive Mechanic for General Services (302). Hired in 1985, they have about 33 years of service. Mark earned $56,951 in 2018.

Ronald Mcfadden

Automotive Mechanic/General Services (302)

2016 total comp
$56,818
Base pay
$56,818
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$56,818
Hire date
2008-01-03

Source-specific fields

Agencyid
A85
Annualsalary
42182
Employee ID
90919

Ronald Mcfadden works as a Automotive Mechanic for General Services (302). Hired in 2008, they have about 8 years of service. Ronald earned $56,818 in 2016.

Shaun Griffin

Automotive Mechanic/General Services (302)

2020 total comp
$56,684
Base pay
$56,684
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$56,684
Hire date
2007-02-11

Source-specific fields

Agencyid
A85
Annualsalary
49344
Employee ID
143751

At General Services (302), Shaun Griffin serves as a Automotive Mechanic. They have served since 2007 (about 13 years). Their 2020 pay totaled $56,684.

Gregory Cabean Jr

Laborer/General Services (302)

2020 total comp
$56,587
Base pay
$56,587
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$56,587
Hire date
2004-05-27

Source-specific fields

Agencyid
A85
Annualsalary
37751
Employee ID
139909

Gregory Cabean Jr holds the role of Laborer at General Services (302). Their tenure dates to 2004, about 16 years. In 2020, their total compensation was $56,587.

Nigel Maragh

Automotive Mechanic/General Services (302)

2020 total comp
$56,124
Base pay
$56,124
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$56,124
Hire date
2004-01-26

Source-specific fields

Agencyid
A85
Annualsalary
50781
Employee ID
147331

At General Services (302), Nigel Maragh serves as a Automotive Mechanic. They have served since 2004 (about 16 years). Their 2020 pay totaled $56,124.

Leroy Butler

Welder/General Services (302)

2020 total comp
$56,043
Base pay
$56,043
Overtime
$0
Other pay
$0
Benefits
$0
Total compensation
$56,043
Hire date
2004-12-23

Source-specific fields

Agencyid
A85
Annualsalary
48873
Employee ID
139854

At General Services (302), Leroy Butler serves as a Welder. They have served since 2004 (about 16 years). Their 2020 pay totaled $56,043.