CALL CENTER HANDLING
Eneco Belgium, a major energy supplier, has acquired more than 1.000.000 customers in B2C segment since 2012. All client questions are being handled by ThinkNexT applications.
A team of 120 Eneco operators handles daily all incoming client calls, online questions and emails. All operators manage these clients using ThinkNexT’s custom built CRM applications matched to Eneco’s business processes.
Originally, when customers wanted to raise a question, they filled out a form on the website upon which an email was sent to a general mailbox. Customer could also send emails to mailboxes directly. The situation soon became unmanageable due to the large amount of emails and number of people working on those mailboxes. It resulted in questions accidentally being ignored or being answered multiple times.
ThinkNexT implemented a solution where the customer questions are converted to work tickets. That applies to question coming from the question form as well as emails in mailboxes. The latter is realized by continuously scanning those mailboxes. The tickets are then automatically assigned to the appropriate customer service department. That is realized through a configurable set of dispatch rules. A customer service department can subsequently answer the question, upon which the customer receives an email. The customer then replies to that email, the mailboxes are once again scanned, and the application assigns the customer reply to the appropriate case. That way, customers can reply easily via email while all questions are managed in a structured way for the customer service departments.
Next to the core functionality, an important focus was the creation of user friendly interfaces for both customer and service departments. The approach followed was to draft mockups of the webpages, iterate on the design and detail them. The result was subsequently implemented. The above example is a front-end webpage, the example below is a back-end webpage.
All ThinkNexT applications are Java based. They use the Tapestry web framework in combination with Hibernate for database connectivity. Hibernate allows us to build our applications on top of any type of database whether that is MySQL, MSSQL, Oracle or others.
The application uses a job-based batch processing architecture to realize high data throughput. Multiple application bundles are deployed to allow parallel operation on the same data. The application gracefully degrades in the event of a crash occurring in a single bundle.
TESTING AND DEPLOYMENT
Continuous integration techniques, based on Jenkins, are used to test the applications. Continuous deployment driven by Maven and custom technology is integrated in the application. That gives us the advantage to upgrade the application in less than a minute with just a push on a button.
Transactionality is implemented on the level of jobs: either a job succeeds and all data is changed consistently or it fails and the data is rolled back to the previous consistent state. That approach follows the unit of work pattern. Import and export of file based data is implemented using a two-phased commit protocol.
The application is being centrally monitored by our custom monitoring system Logness. Logness monitors application availability and stores the application logs. Automated pattern analysis is performed on error and warning logs. This allows us to preemptively solve problems.
In our applications we emphasise ease-of-use. That is inline with our vision to keep things as simple as possible. We believe that also administrative applications should be attractive and fun to work with.