CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($) shares in Thousands, $ in Thousands |
3 Months Ended | 6 Months Ended | ||
|---|---|---|---|---|
Jun. 30, 2018 |
Jun. 30, 2017 |
Jun. 30, 2018 |
Jun. 30, 2017 |
|
| CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS | ||||
| Revenue | $ 69,228 | $ 61,252 | $ 128,377 | $ 111,460 |
| Cost of revenue | 32,866 | 29,993 | 61,276 | 55,052 |
| Gross margin | 36,362 | 31,259 | 67,101 | 56,408 |
| Operating expenses: | ||||
| Research and development | 10,511 | 10,055 | 21,451 | 19,899 |
| Sales and marketing | 12,553 | 11,943 | 25,088 | 23,390 |
| General and administrative | 6,328 | 5,587 | 12,621 | 11,304 |
| Total operating expenses | 29,392 | 27,585 | 59,160 | 54,593 |
| Income from operations | 6,970 | 3,674 | 7,941 | 1,815 |
| Other income (expense), net: | ||||
| Interest, net | 256 | 61 | 492 | 99 |
| Other income (expense), net | (425) | 248 | (782) | 104 |
| Total other income (expense), net | (169) | 309 | (290) | 203 |
| Income before income taxes | 6,801 | 3,983 | 7,651 | 2,018 |
| Income tax expense (benefit) | 161 | 242 | 45 | (2,544) |
| Net income | $ 6,640 | $ 3,741 | $ 7,606 | $ 4,562 |
| Net income per common share: | ||||
| Basic (in dollars per share) | $ 0.25 | $ 0.15 | $ 0.29 | $ 0.19 |
| Diluted (in dollars per share) | $ 0.24 | $ 0.14 | $ 0.28 | $ 0.18 |
| Weighted-average number of shares: | ||||
| Basic (in shares) | 26,041 | 24,587 | 25,973 | 24,298 |
| Diluted (in shares) | 27,267 | 26,388 | 27,396 | 26,024 |