Revenue - Revenue by Contract Relationship (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 02, 2020
Sep. 27, 2019
Oct. 02, 2020
Sep. 27, 2019
Disaggregation of Revenue [Line Items]        
Total revenue $ 352,415 $ 359,873 $ 1,040,212 $ 1,017,368
Prime contractor        
Disaggregation of Revenue [Line Items]        
Total revenue $ 332,564 334,402 980,301 $ 954,191
Revenue, percent change (0.50%)     2.70%
Subcontractor        
Disaggregation of Revenue [Line Items]        
Total revenue $ 19,851 $ 25,471 $ 59,911 $ 63,177
Revenue, percent change (22.10%)     (5.20%)