Software-EngineeringAs a software developer with a focus on web services, I offer the development of APIs, gRPC services, CLI tools and more. Here is an overview of the software development services I can offer you. |
Software-EngineeringAs a software developer with a focus on web services, I offer the development of APIs, gRPC services, CLI tools and more. Here is an overview of the software development services I can offer you. |
Based on your ideas or your existing specifications (OAS3), we create RESTful APIs that meet your exact requirements. All services are designed with security, stability, speed and efficiency in mind.
The services can be secured using OAuth2 and Java Web Tokens (JWT). It is also possible to integrate your own OAuth2 server. Custom authorizations according to your specifications can also be implemented.
In addition to the regular documentation (README), OAS3 specifications can also be created. These specs can be used to generate corresponding API clients quickly and easily.
Just like regular APIs, gRPC services are also implemented. Either according to explicit specifications or according to an existing proto definition. APIs are often combined with gRPC services in order to have both under one roof. This means that a service provides both RESTful APIs and gRPC interfaces.
Services that only work in the background and do not require any interaction are also possible. This enables the development of workers that only react to AMQP/MQTT messages, for example, and process persistent messages from message queues. The development of classic cronjobs is also possible.
From Docker Entrypoint shell scripts to complex deployment helpers, CLI tools and scripts are needed again and again. Mostly in the area of automation and CI/CD, but sometimes also simply as little helpers on the local machine. The areas of application are diverse and probably everyone has had a certain need for such specific helpers.
Connecting the developed software to resources such as databases, caches, message queues, 3rd party APIs etc. is a matter of course. The services can be configured either via configuration files or via environment variables (.dotenv), depending on your requirements. The use of environment variables is particularly useful when used as a Docker container.
In most cases, the services for Linux are developed on the basis of amd64 architecture. This means that software can be delivered as a binary, Debian installer or as a Docker container. However, other OSs (windows/darwin) and architectures (arm64, arm, amd) can also be addressed via cross-compiling. The target systems therefore range from 32-bit Raspberry Pi to 64-bit ARM for Apple systems (and everything in between).