XML 18 R9.htm IDEA: XBRL DOCUMENT
v3.23.2

REVENUES | 6 Months Ended
--- | ---
Jun. 30, 2023
REVENUES |
REVENUES | 3. REVENUES The Company enters into contracts with its clients that contain various types of pricing provisions, including fixed price, time-and-materials, and unit-based provisions. The Company recognizes revenues in accordance with ASU 2014-09, Revenue from Contracts with Customer, codified as ASC Topic 606 and the related amendments (collectively “ASC 606”). As such, the Company identifies a contract with a customer, identifies the performance obligations in the contract, determines the transaction price, allocates the transaction price to each performance obligation in the contract and recognizes revenues when (or as) the Company satisfies a performance obligation. The following table reflects the Company’s two reportable segments and the types of contracts that each most commonly enters into for revenue generating activities. ​
Segment | Contract Type | Revenue Recognition Method
​ | Time-and-materials | Time-and-materials
Energy | Unit-based | Unit-based
​ | Software license | Unit-based
​ | Fixed price | Percentage-of-completion
​ | Time-and-materials | Time-and-materials
Engineering and Consulting | Unit-based | Unit-based
​ | Fixed price | Percentage-of-completion
​ Revenue on the vast majority of the Company’s contracts is recognized over time because of the continuous transfer of control to the customer. Revenue on fixed price contracts is recognized on the percentage-of-completion method based generally on the ratio of direct costs incurred-to-date to estimated total direct costs at completion. The Company uses the percentage-of-completion method to better match the level of work performed at a certain point in time in relation to the effort that will be required to complete a project. In addition, the percentage-of-completion method is a common method of revenue recognition in the Company’s industry. Many of the Company’s fixed price contracts involve a high degree of subcontracted fixed price effort and are relatively short in duration, thereby lowering the risks of not properly estimating the percent complete. Revenue on time-and-materials and unit-based contracts is recognized as the work is performed in accordance with the specific rates and terms of the contract. The Company recognizes revenues for time-and-materials contracts based upon the actual hours incurred during a reporting period at contractually agreed upon rates per hour and also includes in revenue all reimbursable costs incurred during a reporting period. Certain of the Company’s time-and-materials contracts are subject to maximum contract values and, accordingly, when revenue is expected to exceed the maximum contract value, these contracts are generally recognized under the percentage-of-completion method, consistent with fixed price contracts. For unit-based contracts, the Company recognizes the contract price of units of a basic production product as revenue when the production product is delivered during a period. Revenue for amounts that have been billed but not earned is deferred, and such deferred revenue is referred to as contract liabilities in the accompanying condensed consolidated balance sheets. The Company also derives revenue from software licenses and professional services and maintenance fees. In accordance with ASC 606, the Company performs an assessment of each contract to identify the performance obligations, determine the overall transaction price for the contract, allocate the transaction price to the performance obligations, and recognize the revenue when the performance obligations are satisfied. The Company utilizes the residual approach by which it estimates the standalone selling price by reference to the total transaction price less the sum of the observable standalone selling prices of other goods or services promised in the contract. The software license revenue is typically recognized at a point in time when control is transferred to the client, which is defined as the point in time when the client can use and benefit from the license. The software license is delivered before related services are provided and is functional without services, updates, or technical support. Related professional services include training and support services in which the standalone selling price is determined based on an input measure of hours incurred to total estimated hours and is recognized over time, usually which is the life of the contract. To determine the proper revenue recognition method for contracts, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined contract should be accounted for as one performance obligation. With respect to the Company’s contracts, it is rare that multiple contracts should be combined into a single performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or separate a single contract into multiple performance obligations could change the amount of revenue and profit recorded in a given period. Contracts are considered to have a single performance obligation if the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts, which is mainly because the Company provides a significant service of integrating a complex set of tasks and components into a single project or capability. The Company may enter into contracts that include separate phases or elements. If each phase or element is negotiated separately based on the technical resources required and/or the supply and demand for the services being provided, the Company evaluates if the contracts should be segmented. If certain criteria are met, the contracts would be segmented which could result in revenues being assigned to the different elements or phases with different rates of profitability based on the relative value of each element or phase to the estimated total contract revenue. Segmented contracts may comprise up to approximately 2.0% to 3.0% of the Company’s consolidated contract revenue. Contracts that cover multiple phases or elements of the project or service lifecycle (development, construction and maintenance and support) may be considered to have multiple performance obligations even when they are part of a single contract. For contracts with multiple performance obligations, the Company allocates the transaction price to each performance obligation using the best estimate of the standalone selling price of each distinct good or service in the contract. For the periods presented, the value of the separate performance obligations under contracts with multiple performance obligations (generally measurement and verification tasks under certain energy performance contracts) were not material. In cases where the Company does not provide the distinct good or service on a standalone basis, the primary method used to estimate standalone selling price is the expected cost plus a margin approach, under which the Company forecasts the Company’s expected costs of satisfying a performance obligation and then adds an appropriate margin for the distinct good or service. The Company provides quality of workmanship warranties to customers that are included in the sale and are not priced or sold separately or do not provide customers with a service in addition to assurance of compliance with agreed-upon specifications and industry standards. The Company does not consider these types of warranties to be separate performance obligations. In some cases, the Company has a master service or blanket agreement with a customer under which each task order releases the Company to perform specific portions of the overall scope in the service contract. Each task order is typically accounted for as a separate contract because the task order establishes the enforceable rights and obligations, and payment terms. Under ASC 606, variable consideration should be considered when determining the transaction price and estimates should be made for the variable consideration component of the transaction price, as well as assessing whether an estimate of variable consideration is constrained. For certain of the Company’s contracts, variable consideration can arise from modifications to the scope of services resulting from unapproved change orders or customer claims. Variable consideration is included in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. The Company estimates of variable consideration and determination of whether to include estimated amounts in the transaction price are based largely on assessments of legal enforceability, the Company’s performance, and all information (historical, current and forecasted) that is reasonably available to the Company. Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many variables and requires significant judgment. As a significant change in one or more of these estimates could affect the profitability of the Company’s contracts, the Company reviews and updates the Company’s contract-related estimates regularly through a company-wide disciplined project review process in which management reviews the progress and execution of the Company’s performance obligations and the estimate at completion (“EAC”). As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule and the related changes in estimates of revenues and costs. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the cost and availability of materials, the performance of subcontractors, and the availability and timing of funding from the customer, among other variables. The Company recognizes adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the impact of the adjustment on profit recorded to date is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance is recognized using the adjusted estimate. If at any time the estimate of contract profitability indicates an anticipated loss on the contract, the Company recognizes the full amount of estimated loss in the period it is identified. Contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights or obligations. Most of the Company’s contract modifications are for goods or services that are not distinct from existing contracts due to the significant integration provided in the context of the contract and are accounted for as if they were part of the original contract. The effect of a contract modification that is not distinct from the existing contract on the transaction price and the Company’s measure of progress for the performance obligation to which it relates is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis. For contract modifications that result in the promise to deliver goods or services that are distinct from the existing contract and the increase in price of the contract is for the same amount as the standalone selling price of the additional goods or services included in the modification, the Company accounts for such contract modifications as a separate contract. The Company includes claims to vendors, subcontractors and others as a receivable and a reduction in recognized costs when enforceability of the claim is established by the contract and the amounts are reasonably estimable and probable of being recovered. The amounts are recorded up to the extent of the lesser of the amounts management expects to recover or to costs incurred. Billing practices are governed by the contract terms of each project based upon costs incurred, achievement of milestones or pre-agreed schedules. Billings do not necessarily correlate with revenue recognized using the percentage-of-completion method of revenue recognition. Direct costs of contract revenue consist primarily of that portion of technical and nontechnical salaries and wages that has been incurred in connection with revenue producing projects. Direct costs of contract revenue also include production expenses, subcontractor services and other expenses that are incurred in connection with revenue producing projects. Direct costs of contract revenue exclude that portion of technical and nontechnical salaries and wages related to marketing efforts, vacations, holidays and other time not spent directly generating revenue under existing contracts. Such costs are included in general and administrative expenses. Additionally, payroll taxes, bonuses and employee benefit costs for all Company personnel are included in general and administrative expenses in the accompanying consolidated statements of comprehensive income since no allocation of these costs is made to direct costs of contract revenue. No allocation of facilities costs is made to direct costs of contract revenue. Other companies may classify as direct costs of contract revenue some of the costs that the Company classifies as general and administrative costs. The Company expenses direct costs of contract revenue when incurred. Included in revenue and costs are all reimbursable costs for which the Company has the risk or on which the fee was based at the time of bid or negotiation. No revenue or cost is recorded for costs in which the Company acts solely in the capacity of an agent and has no risks associated with such costs. Accounts receivable are carried at original invoice amount less an estimate made for doubtful accounts based upon a review of all outstanding amounts on a quarterly basis. Management determines allowances for doubtful accounts through specific identification of amounts considered to be uncollectible and potential write-offs, plus a non-specific allowance for other amounts for which some potential loss has been determined to be probable based on current and past experience. The Company’s historical credit losses have been minimal with governmental entities and large public utilities, but disputes may arise related to these receivable amounts. Accounts receivable are written off when deemed uncollectible. Recoveries of accounts receivable previously written off are recorded when received. Retainage, included in contract assets, represents amounts withheld from billings to the Company’s clients pursuant to provisions in the contracts and may not be paid to the Company until specific tasks are completed or the project is completed and, in some instances, for even longer periods. As of June 30, 2023 and December 30, 2022, contract assets included retainage of approximately $12.5 million and $8.5 million, respectively. ​

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 9 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-9 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 15 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-15 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (b)(2) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Name Accounting Standards Codification -Topic 606 -Publisher FASB -URI https://asc.fasb.org//606/tableOfContent + Details
Name: | us-gaap_RevenueFromContractWithCustomerTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration