Control Sheet No. 11


S.A.L.S.A. Team Interview


For this issue of Control Sheet we interviewed two members of the recently formed S.A.L.S.A. group within Cosylab, to find out what their group is all about.

Control Sheet: Why don’t you start by introducing yourselves?

Miki: I'm Miroslav Pavleski and I come from Macedonia. I'm living in Ljubljana for two and a half years already. I've worked as a software engineer on several industrial automation projects in Macedonia, before moving to Slovenia. In Cosylab I work specifically on the Tango framework, with emphasis on light sources.

Frank: My name is Frank Amand, I’m Belgian, living in Ljubljana for a year now. Before Cosylab, I spent most of my career at Philips in Belgium and the Netherlands in a variety of software related roles. At Cosylab I worked on the MedAustron project and since November I’m the group leader of the S.A.L.S.A. group.

Control Sheet: Does S.A.L.S.A. stand for anything?

Frank: Software Application Development for Light sources with a Special focus on the control system named after that other Latin American dance. By saying “Not An Acronym” we’d get away with it easier wouldn’t we? (laughs).

Control Sheet: Other Latin American dance?

Miki: Tango. The group is a competence center for the Tango control system. We centralize the expertise Cosylab has built up with this system, train people that are new to it with our Tango Academy and of course, do project work based on Tango.

Control Sheet: Can you tell a bit more to our readers about the Tango control system?

Miki: Sure. Tango is a modern distributed control system which emphasizes object-oriented design. It is a result of collaborative work being done by many parties: ESRF and Soleil (France), MAX-lab (Sweden), Elettra (Italy), ALBA (Spain), DESY (Germany), etc. The Tango ecosystem provides tools cov-ering all important aspects of a modern Distributed Control System (DCS): GUI monitoring and control tools, database based configuration, event-driven communication, alarm handling facilities, data-archiving facilities and programming language bindings for implementing custom components in C++, Java or Python. Of course, with such broad spectrum of concerns and functionalities there is some complexity involved in setting up and integrating the Tango infrastructure. This is where SALSA group experience and expertise come into play.

Control Sheet: What has Cosylab done so far on the Tango front?

Frank: We’ve done a range of things on Tango. For example the integration of Beamline Devices into a Tango DCS like Hexapods at Soleil, Paris, or our microIOC-BCM at Elettra, Trieste. We also did a two-way gateway between EPICS and TANGO and the implementation of a DAL interface with Tango Client Library for DESY, Hamburg. Also we did provide consultancy on system design and feasibility studies, e.g. for MaxLab, Lund, Sweden and for ESRF, Grenoble.

Control Sheet: And what about Light-sources in the acronym?

Miki: The majority of Tango sites are light sources, it makes sense to integrate these kinds of expertise: integrating an undulator is a good example of where they get together.

Frank: And the word Software is there for a reason too. OO software concepts are fundamental to the Tango philosophy: this makes that a “Tango Integrator” is someone with application level software knowledge in his “backpack”. It all makes sense :-)

Control Sheet: To wrap up with a sales twist: why should people with Tango work on their shelves come to you guys?

Frank: Because we’re good dancers! It takes two to Tango, the lab with their controls group and the professionals of Cosylab to help them design and build the right control system, in time and budget. If you’re not exactly sure which way to go in the ballroom, we can even take the lead.


Searching for the spark

Cosylab's approach to recruitment

By: M. Rojo (Cosylab), Z. Kroflic (COBIK*)

Being a company that is involved in the technically and organizationally most complex projects in the world, we need to be able to completely rely on the technical skills and expertise as well as nontechnical capabilities of our employees. We are well aware of the fact that to bring the best out of our people in the excitingly chaotic and highly demanding world of big physics, they need to feel comfortable in their work environment. But not all people respond the same to all environments.

It is clear that there is no universally good company culture and Cosylab is no exception. Therefore it is very important that all our employees share the company’s values and embody its culture – something that cannot be taught or forced but has a very high influence on the morale and wellbeing of all employees and ultimately to the quality of the produced work.

We are always on the lookout for people who are experts in their field, are able to learn extremely fast, have the ability to see the big picture and fit nicely into our culture.

But how can we verify all this in the limited time we have to evaluate a candidate? To put is simply: it's a challenge. One of the things we have found from experience is that a first impression goes a long way. Ignoring a bad gut-feeling about a candidate after the first interviews is something we have always come to regret sooner or later. If a candidate makes a good first impression it is time to start thinking about their potential career path and put their skills to the test.

To be confident that we know why we employ someone we need to be confident that we really get to know the candidates and their potential. In order to achieve this confidence it is of great importance to have at least one person who feels highly responsible for the candidate.

Someone who has a vision for candidate's potential career path, has clear expectations of what the candidate must “show” in order to have the confidence to employ them, someone who is able to create an evaluation plan that takes all this into account and has a clearly defined expected outcome and someone who is able to evaluate also the candidate’s "softer" qualities, like fit into the company culture. Without someone explicitly having this responsibility there is a big danger of employing a person without any real reason. Because we are not interested solely on the technical part, it is important that during evaluation period the candidate does not operate "in a bubble", but is encouraged by the evaluation task itself to communicate with other employees that get to know them and can provide valuable feedback for their evaluation.

Candidate's evaluation task should include a real, complex problem that we encounter in our daily operations, not just a very exactly specified task that can be done routinely by almost anyone who knows that particular technology.

Since in Cosylab we experienced a high growth rate in the past, we were striving for a scalable implementation of our recruitment principles. We defined new roles to ensure clear responsibilities regarding evaluation and employment of a candidate. Group leader (GL), being the one who will potentially employ the person, has the final say and responsibility to say yes or no to employment, keeping in mind long term career path. Helping GL with the decision by providing feedback is team coach (TC), who is responsible for a detailed technical evaluation of the candidate from the definition of the evaluation task and interacting daily with the candidate during the evaluation period all the way to the final review of the work done and discussion regarding cultural fit. A small human resource management team (HRM) in this case needs to do only the initial screening of the candidates and perform sanity checks of what GL and TC are doing along the way. With this we eliminate the problem of having only one or two people responsible for evaluating tens of candidates at the same time, which would make it impossible to ensure the highest standards we have set for ourselves. Once the candidate has passed all the interviews and has completed their evaluation task, it is time to decide whether or not to employ them. During the evaluation period several people have had the chance to interact with the candidate but it is often very hard to clearly express a complex opinion. To cultivate this opinion ultimately we need to ask ourselves the questions:

"Do I want to work with this person and rely on him/her on a make-or-break  project?"

"Am I confident that he/she will produce real results without me having to walk him through the process every time?"

"Does he/she have potential and the ambition to constantly grow, learn new things and always tackle bigger and bigger problems?"

If all people who got to know the candidate can answer positively to these questions it is likely that we are making the right decision by employing them. If the answers are negative or not completely sure, then it becomes clear that there is no real “spark” and it makes little sense to continue with employment.

To have only the biggest talents in our company we have to make sure we employ people where we have reasons to say “yes”, not people where we fail to see reason “why not”.


Customer Support

By: R. Reinhardt (Cosylab)

For any business operation organizing good customer support is a major challenge. It is an activity that should show the company at its best. Customer support is the image of the company to its customers. And as we all know, returning customers represent a major part of the whole business of the company.

In the IT business we are used to splitting customer support service into two levels: at the first, support level, the call or e-mail is received, trivial questions are dealt with and the rest are routed to the appropriate second level support engineer. First level interactions with customer support are frequently time-limited: we know of software companies that limit the length of the first level support call to 5 minutes. First level support is also responsible for gathering a standard set of information from the customer, checking their eligibility for the support service and routing of the support request to the appropriate next level.

One of the important duties of the first support level is creating tickets, traceable logs of the support requests which can be passed to others in the support organization. A ticket behaves like an ordinary paper ticket: it can be passed to others, it should always be owned by somebody and it should contain all the relevant data pertinent to the request. Tickets are entries in support engineers’ input queues waiting to be processed. An essential part of the ticketing system is its ability to trace the flow through the support organization and produce alarms when tickets are stalled for too long. Usual ticket workflow functions also include rerouting for absences, approvals of resolutions by quality control and similar business process support.

A decent ticketing system also provides analysis data such as statistics on waiting times, workloads of particular persons, workloads for particular types of request and also data on the time spent working on particular tasks.

Second level support is responsible for in-depth analysis of the customer’s problem. This includes gathering additional information, reproducing the customer’s environment, isolating the problem to the simplest possible case, finding a solution or workaround for the problem and presenting the problem to the developers as a high quality bug report that calls for a developer’s action. Bug fixing and functionality improvements are almost never part of the support operation.

We all remember definitions from the MIT Hacker’s Dictionary closely associating the words bug and feature (“bug, see feature”; “feature, see bug”, “a bug is an undocumented feature”). In software engineering there are more links between the two than we sometimes want to admit. There is a thin line between bug reports and feature requests, and both should be processed in the same way: grouped into interrelated sets of change orders that will be implemented in a consistent way. It is well known that fixing a bug often introduces many new ones and implementing a feature is of course bug-prone. In a complex system, a deep understanding of the impacts of changes is needed before we undertake any major change in the software.

Most Cosylab customers come from research and engineering environments. Such users have specific requirements regarding support: they tend to rely on themselves as long as possible and only when the problems are hard do they call for support. Most of the support calls are thus non-trivial, the customer expects a correspondent with a strong technical background and they expect fast responses since they have spent a considerable amount of time trying to solve the problem by themselves. There is usually no room for trivial answers such as “read the manual”, and frequently such answers would be offensive to a knowledgeable customer.

It seems at first glance, therefore, that such demanding customers should have immediate access to the developers, and today at Cosylab they do indeed have such access. There are two reasons we would like to change this at least in part. The first is that we want to give the developers some air to breathe – we do not wish for them to be event driven and they have a schedule that would be disturbed by incessant queries. The second reason that customers will want to speak to a dedicated support organization is that support personnel are trained to assist the customer better: they speak the customers’ language, they show a level of empathy with the customer, they are willing to take the time necessary to understand the customer’s problems and their role is to be helpful.

At Cosylab we have not so far had a huge need for a separate support organization. We have managed to support customers via the usual dedicated contact person, who took care of all customer’s needs. We have only recently become involved in projects in which we deal with an increasing number of customers (or our partners’ customers). Currently we are involved, amongst others, in two such projects: ITER developers and suppliers who use the CODAC system to develop and integrate their plant systems. Cosylab has been providing CODAC support for two years and we are expanding this operation significantly in 2012 to match the growing number of CODAC users in this year.

We are involved in developing products that are used in significant numbers in the field and where the product designer and integrator is not present at each site. Cosylab Support group is being formed as a group comprising members from existing groups that currently provide these services. We are staffing this group with people with the best communication skills and broad technical knowledge.

Having a support group at Cosylab will necessitate a change in organizational culture. People in support are like firemen: the less urgent work they have, the happier we are. So we are defining a set of lower-urgency complementary tasks for them to undertake. These will include some QA work, some documentation work and also customer training. All these tasks will also improve the technical knowledge of the support crew.

We will move support contacts with existing customers very slowly to the support group. Our customers should benefit from this group taking better care of them than is possible through direct contacts with the development engineers. This includes improvements in our CRM system and improvements in our internal processes. Do not worry –  existing customers will retain direct phone numbers and e-mail addresses of all the engineers; the goal of this setup is that you will frequently prefer to contact Cosylab support than the engineers directly, due to its better service.


Professor Kurokawa has received yet another award for outstanding achievements


Cosylab's Vice president and the emeritus professor of KEK, Shin-ichi Kurokawa, has been honored with the 2011 award for the International Scientific Cooperation on 18th of January, by the Chinese Academy of Sciences (CAS), China’s top academic and research institution in natural sciences.

This award is given to honour eminent foreign experts who make outstanding contributions to facilitating cooperation with CAS in science and technology, and to encourage more efforts that will strengthen CAS’s innovation capacity and lead to improvements in its research performance, education and training, management and reputation in the international scientific community.

Kurokawa is a well-known builder of the relationship betweend China and Japan, who has been conserving a cooperative relation between the two countries by promoting the academic cooperation and exchanges in both science and technology. He has been successfully collaborating and building the strength of the relationship with Chinese researchers at the Institute of High Energy Physics (IHEP), the Shanghai Institute of Applied Physics and the University of Science and Technology of China and also with the Institute of Modern Physics. “I faced difficulties in dealing with differences of culture between the two countries, as I recall. However, it was a great pleasure to promote and deepen the collaborative relationship with our Chinese colleagues. I am quite confident that this collaboration will grow further based on the strong foothold we have built,” said Kurokawa. He has been collaborating with Chinese researchers from his first visit to China in 1988. In 1999, he organized the first major Asian accelerator school that was held in Beijing and was able to carry it to a successful conclusion. In 2000 he initiated a 10 year long collaborative programme between the Japan Society for the Promotion of Science (JSPS) and CAS. By using this scheme of collaboration, professor Kurokawa helped IHEP to upgrade its Beijing Electron Positron Collider (BEPC) to a two-ring electron-positron collider, BEPC II, especially by transferring to China the superconducting accelerating technology, used at the KEKB accelerator in Japan. Kurokawa also served as chair of the Asian Committee for Future Accelerator (ACFA) from 2004 to 2006 and chair of the Steering Committee for the International Linear Collider (ILCSC) from 2005 to 2007. 

Cosylab congratulates professor Kurokawa for his outstanding work and for all the ideas yet to come. We are proud to have professor Kurokawa as our much appreciated co-worker and wish him all the best in the future.

 Image: CAS

back to previous content

 Download printable version of Control Sheet nr.11 here