Software design engineer working

Software design

The most important part in the setting or device data visualization from a mobile phone (Android or IOS) or PC (Windows, Linux) is a program that communicates with the device by USB, WIFI, BLE, Ethernet or another protocol

Contact

Key capabilities

Languages

Java / Kotlin / C# / C/C++ / Python / Java Script

Java
Kotlin
C language
C ++ programming language
Python Language
JS B&W language

Diagrams

Block / UML / Workflow / APIs

Diagram
UML
Workflow
API

Interfaces

USB / Ethernet

Protocols

MQTT / HTTP / FTP / Modbus TCP/RTU / SNMP / TCP/IP / UDP/IP / DLMS / custom protocols

DLMS

Wireless

BLE / WiFi / UWB

Security

AES / SSL/TLS

Libs and frameworks

GStreamer / Paho MQTT / WolfSSL (SSL/TLS) / Mbed TLS(SSL/TLS) / QT framework / .NET MAUI / Xamarin Forms and Maui / ASP.NET Core and web development / React (web UI development) / SQLite DB / FireBase DB / Mong DB / InfuxDB DB / Room / TensorFlow / Node.js

Xamarin Forms
ASP .NET Core
React
SQLite DB
FireBase DB
Mongo DB
InfuxDB
Room
TensorFlow
Node.js

OS

Android / IOS / Linux / Windows

Android
IOS
Linux
Windows

Tools that we use

QT

QT

Visual Studio Code

Visual Studio

GCC (Linux and Windows)

GCC (Linux and Windows)

Android Studio

Android Studio

Project process

Requirements design

As the first step our team makes technical requirements of the software, it describes all technologies (database, communication protocols, Frameworks, GUI, architecture of each module) and logic of the work

Alternate Text

Diagram design

At this stage, we do architecture design based on the requirements. It usually includes: a software block diagram, a workflow diagram (describe deep logic of the work), and a UML/API diagram(describe all files and code classes/modules)

Alternate Text

Start code development

In this stage, we divide the scope of the work based on the UML/API into small sprints (usually 2 weeks each) and make planing with the delivery of each part. Each week make small delivery of the code based on the planning

Alternate Text

Code review and testing

If the project has enough code size and budget (we have rules), a responsible engineer does a code review. After that’s QA engineer tests all the code files rather manually or by writing the tests.. For the current steps, we use the standard GIT mechanism with merge request and management schema from Jira

Alternate Text

Code delivery

When some parts of the code is done and it’s agreed with the customer - we deliver (release) the software. Use usually for this GIT standard mechanism of the delivery/release code and GIT tags. The delivery includes full development of the current stage, code review, full regression testing and a demo project that shows how the current part of the code works

Alternate Text

Finalizing code development

It’s the last stage of the development, on this stage we finish the development, code review and testing of the final code. we make sure that we fit the technical requirements and expectations with the customer. Especially, all our software are based on the device control(BLE, USB, CAN, WIFI, etc) and in this case, we need to make sure all works well and final testing was done with the last device version

Alternate Text

Support and bug fixing

Each project has a support stage and bug fixing because after a final release, will need some improvements. We usually agree with the customer on a period of support. It could be how a few months and a few years (if a complicated project)

Alternate Text

Our Offices

Vinnytsia. Droid-technologies office

Ukraine, Kyiv City, str Vaclav Havel 4, office 422

Kharkiv. Droid-technologies office

Ukraine, Vinnytsia City, Kyivska 41

Ukraine, Kharkiv City, St. Karazyna 1,

Droid-technologies location
Kyiv
Vinnytsia. Droid-technologies office
Vinnytsia
Kharkiv. Droid-technologies office
Kharkiv

What can we do for you?

Feel free to get in touch

+380442374050

Ready to request a quote?

Describe your project

Ask for advice from our experts right now

Want to learn more? Need some help with product development? Tell us about your business needs. We will find the perfect solution