Consulting and Training


We offer customized Java trainings, with "hands on" approach and realistic examples. The trainings are designed according to your needs, knowledge level, specific type of projects or application domain. Learn how new Java technologies can increase your productivity and help you gain competitive advantage. Our trainings and consultancy include Java EE technologies, and new Java 7 and 8 features.

NetBeans Platform

NetBeans Platform is the rich framework for building complex, modular Java desktop applications. We provide customized training and consultancy for development of NetBeans Platform applications, in close collaboration with NetBeans project and the community.

Software Design

Software design is the most critical aspect of software development, and it is usually one of the reasons for all other problems that may occur during software life cycle. Good design makes sure that your software will be able to grow and adapt to future needs, and work well with new technologies. At the same time it is important to keep focus on aspects that make significant impact, and not waste time and resources on things that are not important for your primary goals. Good software design is the art of keeping the right balance between the key factors of software quality: flexibility, complexity and maintainability. We can provide design analysis and help you in establishing design practice which is aligned with your development strategy. It includes clear design principles and practice for specific projects and problems, automated analysis and reports.

Software Performance

Software performance issues are the most dangerous and difficult, and they usually have high impact on business (or some other primary software function). They are hard to identify and sometimes tricky to resolve. There is a wide range of reasons for performance issues from design and implementation to configuration, on different architectural levels. We can help you with tracking performance issues, and resolving them in the right way, from application to operating system level, including the Java Virtual Machine for Java applications.

Software Quality

Maintaining software quality is the way to keep your project alive in the long term. It also means reduced maintenance costs, higher efficency and faster development. Applying software quality management in practice is not easy and straightforward process We can develop specialized software quality metrics and procedures focused on your specific project needs, business and development goals. Our software quality solution can include software quality evaluation from end user, developers and business perspective with survey, analytics and tools. We can also provide source code quality evaluation, and help you with integration of software quality evaluation techniques and tools in existing development processes.

Artificial Intelligence

We provide customized AI consultancy and trainings, and work together with you on your projects. We also provide research and prototype development services in order to make sure that proposed solutions work in practice. In order to provide state-of-the-art solutions we collaborate with wide range of experts from Artificial Intelligence Laboratory, Open Source Software Development Center and Department for Software Engineering at University of Belgrade.

Our area of expertise includes: