Consilia is Customer-Oriented Software Development Company

We provide turnkey development or we support just in specific phases.

Consilia helps its customers to reduce their software development budget.

We have been developing applications and embedded firmware for more than 20 years.

A usual question for electronic product developers who order services from a software development firm is how to embed software into hardware.

You don't have to deal with multiple suppliers

We can integrate SW and HW in one embedded device and we also provide system testing
We can find solutions where others cannot
Our team of engineers follows the latest trends in software development to make our products more straightforward, reusable, and easy to modify.

Software Development

We can speed up your software development project in many areas.

Our specialties are embedded applications.

We also design their software counterparts for host PCs to provide our customers with a full–service chain (including the integration of hardware and software).

List of software services

Linux Application Development
Linux BSP Creation and Processor Porting
Frontend Development
Backend Development
Driver Development for Windows & Linux
Firmware Development

Embedded Systems Testing

Do you need to ensure your embedded product is stable, maximally reliable, and functional? Our ISTQB certified testers uncover hidden issues early and helping ensure your product launches on time.

What We Can Do for Your Product

We provide services in every phase of the software development life cycle.

It depends on the customer whether they need to use our entire process chain or just some of our services, especially when the customer has their own team with a gap in specific competence (e. g., software testing).

Our typical job flow is based on the following controlled processes:

01.

Feasibility Studies

Before the project's realization, we carefully analyze whether and what technologies can fulfill all the requirements, including manufacturability and production costs.

For such an analysis, we need certain inputs from the customer – e.g., technical requirements, target cost, and schedule.

02.

‍Software Architecture Design

We consider the design of SW architecture a vital part where we spend reasonable effort at the early stage and save many costs later.

We sketch up the layers of the software, suggest the functional blocks and define relations between them.

03.

Proof of Concept

In some cases, we create a fast prototype that shows us (and the customer, of course) if the system architecture candidate has a great chance to fulfill the key functionalities and requirements.

On such a POC (Proof of Concept), we also test and measure critical points, e.g., mechanical stability, system responsiveness, data throughput capability, and power consumption.

04.

Data Flow Models

Based on software architecture, we create detailed data flow models where we see exactly if it fits the requirements.

We use the output of this phase as a basis for creating the modules/units and the unit test plan.

05.

Research on Solutions

Many marketing models can be realized in multiple ways.

We always analyze multiple solutions or concepts to stimulate a sort of internal competition among them and to select the best of them.

06.

Implementation

We implement the software using a revision control system extensively. We have had very deep experience with Git for many years.

When merging the feature branches into master branch, the system assists us especially at code reviews.

07.

Unit Tests

Our team takes care of unit tests internally.

We use the unit tests to debug the unit/module at the lowest possible level, which is for us one of the most cost-saving ways to stable and reliable software.

08.

Vertical Integration of the Components

In projects where the Agile approach is best, we vertically integrate the components for a visible feature or functionality regularly.

That enables the product owner to track whether the project is going straightforward and to disclose potential critical path as soon as possible.

09.

Integration with HW

Cooperation between our software and hardware teams is our strength.

Our hardware colleagues are highly experienced in creating our own hardware modules and planning hardware/software interface in advance.

Therefore, we usually perform hardware/software integration seamlessly and avoid finding critical systém bugs too late.

10.

Feature Tests

As part of vertical integration, we test system features according to the test plan.

When appropriate, we create our own test system and implement the tests so that they can be reused and repeated at any time.

11.

Regression Tests

When adding and implementing new features, we test the existing ones as well to keep all parts of the system working reliably.

Basically, regression tests are for us feature tests repeated on a regular basis.

Therefore, we reuse the test system and test cases from the feature tests.

01.

Feasibility Studies

For such an analysis, we need certain inputs from the customer – e.g., technical requirements, target cost, and schedule.

02.

SW Architecture Design

We sketch up the layers of the software, suggest the functional blocks and define relations between them.

03.

Proof of Concept

On such a POC (Proof of Concept), we also test and measure critical points, e.g., mechanical stability, system responsiveness, data throughput capability, and power consumption.

04.

Data Flow models

We use the output of this phase as a basis for creating the modules/units and the unit test plan.

05.

Research on Solutions

We always analyze multiple solutions or concepts to stimulate a sort of internal competition among them and to select the best of them.

06.

Implementation

When merging the feature branches into master branch, the system assists us especially at code reviews.

07.

Unit Tests

We use the unit tests to debug the unit/module at the lowest possible level, which is for us one of the most cost-saving ways to stable and reliable software.

08.

Vertical Integration of the Components

That enables the product owner to track whether the project is going straightforward and to disclose potential critical path as soon as possible.

09.

Integration with HW

Our hardware colleagues are highly experienced in creating our own hardware modules and planning hardware/software interface in advance.

Therefore, we usually perform hardware/software integration seamlessly and avoid finding critical system bugs too late.

10.

Feature Tests

When appropriate, we create our own test system and implement the tests so that they can be reused and repeated at any time.

11.

Regression Tests

Basically, regression tests are for us feature tests repeated on a regular basis.

Therefore, we reuse the test system and test cases from the feature tests.

Gain support from our experts at every stage of software development and elevate your project to the next level.

We cooperate with...

Technologies and Platforms

For software development, we always use Atlassian JIRA and bitbucket for bug tracking. All other technologies differ depending on the application (embedded, native, web), platform (ARM Cortex M0 – M4, ARM Cortex A7 – A73, ST32), and programming language (C, C++, C#, Python, JavaScript).For more information on what technologies, platforms, and programming languages we use to develop software, please visit our Integration Technologies page.

Let Us Know About Your Project

Contact us

Our hardware and software development company is ready for new partners, business opportunities and challenging projects.

* Required fields are marked with an asterisk.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Cooperation Options

We can work in-house or support your team

With our experience in various tools, methodologies (Waterfall, V-Model, Agile), and processes (V&V), we easily adapt to your standards.

We offer two main cooperation models:

Tens of thousands

of embedded source code lines.

However, our software engineers understand that software development is not just coding.