<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<MULTIPLIER> 1,000
<S> <C>
<PERIOD-TYPE> 12-MOS
<FISCAL-YEAR-END> JUN-30-2000
<PERIOD-START> JUL-01-1999
<PERIOD-END> JUN-30-2000
<CASH> 2,030
<SECURITIES> 167
<RECEIVABLES> 99,513
<ALLOWANCES> 1,100
<INVENTORY> 375
<CURRENT-ASSETS> 105,369
<PP&E> 49,801
<DEPRECIATION> 20,243
<TOTAL-ASSETS> 192,144
<CURRENT-LIABILITIES> 49,607
<BONDS> 0
0
0
<COMMON> 2,261
<OTHER-SE> 96,792
<TOTAL-LIABILITY-AND-EQUITY> 192,144
<SALES> 558,731
<TOTAL-REVENUES> 558,731
<CGS> 452,334
<TOTAL-COSTS> 452,334
<OTHER-EXPENSES> 90,708
<LOSS-PROVISION> 350
<INTEREST-EXPENSE> 1,584
<INCOME-PRETAX> 15,557
<INCOME-TAX> 5,656
<INCOME-CONTINUING> 9,788
<DISCONTINUED> 0
<EXTRAORDINARY> 0
<CHANGES> 0
<NET-INCOME> 9,788
<EPS-BASIC> .43
<EPS-DILUTED> .43
</TABLE>