Services

Automation

Facilitate great products/services and a healthy organizational culture with automation

From conceptualization through delivery, utilizing efficient and innovative methods and techniques for requirements gathering and analysis, I will work with you to clearly understand your needs, as well as your existing product or service, scope the project, then perform any necessary engineering work to deliver the final solution, whether it is:

  • Infrastructure automation – automation of provisioning, configuration and management of:
    • VMs (Linux, Windows Server) and services on private cloud (VMware vSphere) or public cloud (e.g. Azure)
    • Software-defined infrastructure (SDI) devices ( F5 Networks BIG IP, BIG IQ, A10 Networks vThunder, Cisco Networks ASA Security Device, etc. )
    • Big Data clusters ( Hortonworks Data Platform (HDP) cluster, etc. )
    • or any other part of infrastructure, even without API (RPC, SOAP or REST) via Direct Integration

    enabling you to:
    • automatically provision infrastructure – i.e. network resources, disks and virtual machines, e.g. to create easily replicable, stable environment which allows for scaling and further development – utilizing infrastructure automation and scripting tools ( e.g. Ansible, Terraform, Packer )
    • augment your existing product or service – be it Software as a Service (SaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS), or other–with integrated programmatic automation of provisioning, configuration and management of infrastructure capabilities
    • manage software defined infrastructure more efficiently and cost-effectively via a custom automation solution – instead of e.g. Chef, Ansible or Puppet – so it can integrate into your existing product, service or higher-level programmatic orchestration tools

  • Build automation – including:
    • Automating Gradle, Maven or Tycho build
    • Automating Docker container build as part of Gradle or Maven build pipeline
    • Creating custom Gradle, Maven or Tycho plugin
    • Migrating outdated build automation ( e.g. Eclipse product / RCP application / plug-in / feature / p2 repository build to Tycho build )

    enabling you to:
    • transition to DevOps by taking the first step to Continuous Integration (CI) and Continuous Delivery (CD) – build automation is the absolute prerequisite step for both Continuous Integration (CI) and Continuous Delivery (CD) to be implemented in your organization
    • eliminate a source of variation and thus defects
    • provide living documentation of assumptions about the target environment and of dependencies on third party products
    • increase efficiency as well as product / service quality, and much more

  • CI/CD automation – multi-stage Continuous Integration (CI) and Continuous Delivery (CD) pipeline automation development, including:
    • Automated application build
    • Automated integration tests
    • Automated Docker image build and publishing
    • Automated deployment, ensuring ordered bootstrap of services
    • Automated REST / GraphQL API tests ( e.g. smoke tests, scenario tests )

  • Documentation & Architecture automation – including:
    • REST API documentation – build time or runtime generation
    • Documentation as code
    • Architecture as code

    enabling you to:
    • version and store documentation / architecture just like code
    • automatically generate documentation / architecture whenever latest changes must be reflected – in comparison, manually produced documentation is usually out of question, because, quite simply, it goes stale too fast and hinders instead of helping
    • significantly improved intra- and inter- team communication
    • increase efficiency and agility and better product/service quality
    • facilitate automated contract / API testing, generation of API clients and servers, and much more



Development and integration

Turn your business idea into working software

From conceptualization through delivery, utilizing efficient and innovative methods and techniques for requirements gathering and analysis, I will work with you to clearly understand your needs, as well as your existing product or service, scope the project, then perform any necessary engineering work to deliver the final solution, whether it is:

  • Development, including:
    • Implementations of standards and specifications ( e.g. OSGi, OGC API, etc. )
    • OSGi development – from simple projects to those consisting of hundreds of modules, both OSGi and non-OSGi, utilizing OSGi Core, Compendium and Enterprise specifications' implementations, including Eclipse Equinox, Apache Felix, Apache Aries, and more
    • Model-driven development – including EMF (Eclipse Modeling Framework) development, Eclipse MMT / QVTO, Swagger, OpenAPI Generator, and more
    • API Development – including REST, GraphQL, Swagger, OpenAPI Generator, and more
    • Full stack development – or only front-end or back-end development – including Java ( Java SE, Java EE, Jakarta EE ), Dart, Flutter, SQL, JavaScript, JSON, XML, HTML, CSS, and more

  • Integration – including API integration ( e.g. REST, GraphQL, Swagger, OpenAPI Generator ), Enterprise Application Integration ( e.g. Apache Camel, RabbitMQ ) and Direct integration–when no API is available ( e.g. SSH automation )



Migrations and upgrades

Future-proof your platforms and development environments

From simple projects to those consisting of hundreds of modules, both OSGi and non-OSGi, I will work with you to clearly understand your needs, as well as your existing product or service, scope the project, then perform any necessary engineering work to deliver the final solution, whether it is:

  • Migrating to OSGi, including migrating from Spring Dynamic Modules to OSGi Blueprint and/or OSGi Declarative Services
  • Migrating to micro-services
  • Migrating to Cloud
  • Migrating to Kubernetes
  • Migrating to centralized log management
  • Migrating project build (e.g. Eclipse project build to Tycho, Ant to Maven)
enabling you to:
  • transform your legacy application or system into modern, newer or changed version, with similar or extended functionality – avoiding complete rewrite or replacement with proprietary / licensed product
  • develop new features
  • introduce Continuous Integration (CI) / Continuous Delivery (CD)
  • save time and money, and much more



Consulting

Tap into the 15+ years of experience and expertise gathered from my work with clients from the USA, UK and EU across many diverse industries

I will work with you to clearly understand your needs, as well as your existing product or service, scope the project, then perform any necessary engineering work to deliver the final solution, whether it is:

  • Automation
  • Development or integration
  • Migration or upgrade
  • Technical audit