XML 58 R46.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue - Disaggregation of revenue by customer type and contract type (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Disaggregation of Revenue        
Revenue $ 908,216 $ 789,929 $ 1,651,459 $ 1,451,487
Fixed price        
Disaggregation of Revenue        
Revenue 204,234 182,586 422,013 328,871
Unit price        
Disaggregation of Revenue        
Revenue 497,117 333,374 824,003 592,574
Cost reimbursable        
Disaggregation of Revenue        
Revenue 206,865 273,969 405,443 530,042
MSA        
Disaggregation of Revenue        
Revenue 335,311 348,313 605,719 641,192
Non-MSA        
Disaggregation of Revenue        
Revenue 572,905 441,616 1,045,740 810,295
Power        
Disaggregation of Revenue        
Revenue 157,476 172,170 353,669 317,553
Power | Fixed price        
Disaggregation of Revenue        
Revenue 119,336 105,105 264,186 180,248
Power | Unit price        
Disaggregation of Revenue        
Revenue   4,042 181 10,655
Power | Cost reimbursable        
Disaggregation of Revenue        
Revenue 38,140 63,023 89,302 126,650
Power | MSA        
Disaggregation of Revenue        
Revenue 26,505 43,689 63,600 92,884
Power | Non-MSA        
Disaggregation of Revenue        
Revenue 130,971 128,481 290,069 224,669
Pipeline        
Disaggregation of Revenue        
Revenue 289,559 137,243 481,082 272,057
Pipeline | Fixed price        
Disaggregation of Revenue        
Revenue 24,006 14,109 39,351 31,336
Pipeline | Unit price        
Disaggregation of Revenue        
Revenue 150,331 10,130 232,161 10,504
Pipeline | Cost reimbursable        
Disaggregation of Revenue        
Revenue 115,222 113,004 209,570 230,217
Pipeline | MSA        
Disaggregation of Revenue        
Revenue 32,817 20,153 79,549 42,002
Pipeline | Non-MSA        
Disaggregation of Revenue        
Revenue 256,742 117,090 401,533 230,055
Utilities        
Disaggregation of Revenue        
Revenue 230,175 222,312 377,345 368,518
Utilities | Fixed price        
Disaggregation of Revenue        
Revenue 30,683 30,120 54,772 52,887
Utilities | Unit price        
Disaggregation of Revenue        
Revenue 155,006 119,618 235,645 187,496
Utilities | Cost reimbursable        
Disaggregation of Revenue        
Revenue 44,486 72,574 86,928 128,135
Utilities | MSA        
Disaggregation of Revenue        
Revenue 182,601 172,371 286,612 291,833
Utilities | Non-MSA        
Disaggregation of Revenue        
Revenue 47,574 49,941 90,733 76,685
Transmission        
Disaggregation of Revenue        
Revenue 109,948 135,354 212,732 253,797
Transmission | Fixed price        
Disaggregation of Revenue        
Revenue 12,843 14,251 26,479 22,714
Transmission | Unit price        
Disaggregation of Revenue        
Revenue 97,020 115,679 185,809 221,520
Transmission | Cost reimbursable        
Disaggregation of Revenue        
Revenue 85 5,424 444 9,563
Transmission | MSA        
Disaggregation of Revenue        
Revenue 92,656 110,875 174,430 212,598
Transmission | Non-MSA        
Disaggregation of Revenue        
Revenue 17,292 24,479 38,302 41,199
Civil        
Disaggregation of Revenue        
Revenue 121,058 122,850 226,631 239,562
Civil | Fixed price        
Disaggregation of Revenue        
Revenue 17,366 19,001 37,225 41,686
Civil | Unit price        
Disaggregation of Revenue        
Revenue 94,760 83,905 170,207 162,399
Civil | Cost reimbursable        
Disaggregation of Revenue        
Revenue 8,932 19,944 19,199 35,477
Civil | MSA        
Disaggregation of Revenue        
Revenue 732 1,225 1,528 1,875
Civil | Non-MSA        
Disaggregation of Revenue        
Revenue $ 120,326 $ 121,625 $ 225,103 $ 237,687