First and foremost, our work can be divided into two different modes of operation:
- In our Solutions unit we develop customer projects, whereas
- in our Products unit we create, build and run our own products.
Our concept is to offer full service to our customers – from embedded IoT hard- and software to backend services running in the cloud to the various frontend applications.
We work with Github (and Github Actions), Slack, Confluence and Jira. Our work is peer-reviewed using Github Flow, linted and tested.
We develop in an agile way, relying on methods from SCRUM and Extreme Programming. For us, it is essential that agile means continuous learning and improvement (Kaizen). As we work for customer projects, it is crucial for our teams to work with the customer as closely as possible. That doesn’t mean that we work at the customer’s site however – we perform our daily work inhouse only.
When building teams we adapt to the individual conditions for each product, customer and project. Usually, a team consists of a Product Owner, a Scrum Master, and a cross-functional development team. To deliver the best result for our project customers, we have to make their product our product.
We are working towards a standardized set of tools and packed a small selection in our toolbox, e.g.:
- For backend development, we usually choose Kotlin. Our go-to general purpose setup for IoT backend solutions is Spring Boot and Kotlin. It provides us with a battle tested framework and runtime, while using a modern language.
- We develop our mobile applications in Kotlin (Android) and Swift (iOS), but are open to look into recent innovative solutions like Flutter. For dependency management we rely on Carthage and Gradle.
- In Bare Metal and Embedded Linux environments, we typically go with C or golang. We usually deal with Bluetooth® Low Energy, Apple® HomeKit™ and cellular technologies like LTE, LTE-M or NB-IoT in our projects.
- PostgreSQL is a versatile database usually solving all of our needs.
- Kubernetes is our friendly, cloud agnostic way to deploy on any infrastructure. We use a combination of Kustomize, ArgoCD and Terraform to manage our complete infrastructure.
- Azure is our primary public cloud provider; we still use Google Cloud or AWS for different reasons.
- We are generally open to evaluate new technologies and enrich our stacks sensibly.
We are an open source friendly company. We like to use open source tools and frameworks, whenever possible. People working at grandcentrix have contributed to open source projects, and we also have a few open source projects ourselves.
If that sounds good, let us tell you something about our hiring process.