<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<LEGEND>
THIS SCHEDULE CONTAINS SUMMARY FINANCIAL INFORMATION EXTRACTED FROM THE
COMPANY'S CONSOLIDATED FINANCIAL STATEMENTS INCLUDED IN THIS FORM 10-Q
</LEGEND>
<MULTIPLIER> 1,000
<S> <C> <C>
<PERIOD-TYPE> 3-MOS 6-MOS
<FISCAL-YEAR-END> DEC-31-2000 DEC-31-2000
<PERIOD-START> APR-01-2000 JAN-01-2000
<PERIOD-END> JUN-30-2000 JUN-30-2000
<CASH> 789 0
<SECURITIES> 6,322 0
<RECEIVABLES> 63,004 0
<ALLOWANCES> (931) 0
<INVENTORY> 0 0
<CURRENT-ASSETS> 72,386 0
<PP&E> 15,718 0
<DEPRECIATION> (4,856) 0
<TOTAL-ASSETS> 129,438 0
<CURRENT-LIABILITIES> 51,602 0
<BONDS> 0 0
0 0
0 0
<COMMON> 114 0
<OTHER-SE> 77,722 0
<TOTAL-LIABILITY-AND-EQUITY> 129,438 0
<SALES> 32,068 59,555
<TOTAL-REVENUES> 32,068 59,555
<CGS> 15,849 29,826
<TOTAL-COSTS> 27,600 52,434
<OTHER-EXPENSES> 0 0
<LOSS-PROVISION> 0 0
<INTEREST-EXPENSE> 0 0
<INCOME-PRETAX> 4,745 7,753
<INCOME-TAX> 1,954 3,178
<INCOME-CONTINUING> 2,791 4,575
<DISCONTINUED> 0 0
<EXTRAORDINARY> 0 0
<CHANGES> 0 0
<NET-INCOME> 2,791 4,575
<EPS-BASIC> 0.26 0.43
<EPS-DILUTED> 0.24 0.38
</TABLE>