Offer

Application Integrated Programmatic Infrastructure Automation

Enhance your product or service with integrated programmatic infrastructure automation capabilities

  • 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
Application integrated programmatic automation of provisioning, configuration and management of:
  • VMs (Linux, Windows Server) and services on private cloud (VMware vSphere) or public cloud (e.g. Azure)
  • Cisco Networks ASA Security Device
  • F5 Networks BIG IP, BIG IQ
  • A10 Networks vThunder
  • Hortonworks Data Platform (HDP) cluster
  • Red Hat Satellite Server
  • or any other part of infrastructure, even without API (RPC, SOAP or REST) via Direct Integration

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.


Build Automation

Maven, Tycho, Docker build automation, including custom Maven / Tycho plugins

Build automation is not only the absolute prerequisite step for both Continuous Integration (CI) and Continuous Delivery (CD) to be implemented in your organization, but brings numerous benefits of its own, including eliminating a source of variation and thus defects, providing living documentation of assumptions about the target environment and of dependencies on third party products, increasing efficiency as well as product / service quality, and more.

Perhaps you're just starting transitioning to DevOps, or have a legacy product which you'd like to include in your CI/CD pipeline, or your existing build is not yet fully automated–requires human intervention and/or does not have all of its steps repeatable–or you’re not using yet Tycho for your Eclipse products / RCP applications / plug-ins / features / p2 repositories, or require custom Tycho or Maven plugins?

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:

  • Automating Maven build
  • Automating Docker container build as part of Maven build pipeline
  • Creating custom Maven plugin
  • Automating Tycho build
  • Migrating Eclipse product / RCP application / plug-in / feature / p2 repository build to Tycho, or
  • Creating custom Tycho plugin

Documentation & Architecture Automation

Living documentation including Documentation as Code and Architecture as Code

Misinterpreting Agile Manifesto's tenet of valuing working software over comprehensive documentation for many years resulted in projects having simply no documentation, thus significantly, and paradoxically, decreasing agility of a given team / project.

Understanding software must include its surroundings–architecture, dependencies, knowing how to deploy, common issues, etc. These must reflect the latest changes applied, therefore manually produced documentation is usually out of question, because, quite simply, it goes stale too fast and hinders instead of helping.

Answer to this is living documentation–meaning, both documentation and architecture versioned and stored just like code and automatically generated whenever latest changes must be reflected. We can even go further and treat our source code as the single point of truth and with proper tooling automatically generate from source code multiple architectural views, representing different levels of abstraction. If our product exposes a REST API, same approach can be applied to obtain an up to date API documentation.

Benefits of this approach are numerous, including significantly improved intra- and inter- team communication, increased efficiency and agility and better product/service quality. In addition, automated API documentation–which is human as well as machine-readable by default–facilitates automated contract / API testing, generation of API clients and servers, and much more.

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 integrate one or all of the following into your existing projects:
  • Architecture as code
  • Documentation as code
  • REST API Documentation–any JAX RS implementation, static, build time or runtime generation

Business Automation

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

  • leverage automation for individual tasks, processes or entire value streams
  • minimize time spent on menial tasks by either fully automating them or making them easier to perform
  • improve consistency and reduce probability of error by eliminating need for manually executing repeatable, tedious tasks, those which don’t require critical thinking or problem solving, as well as those with high margin of human error
  • focus on important, innovative work which adds real value
  • increase efficiency, productivity, and morale among your team or organization
  • boost projects’ success rates [1]
  • cut costs by a margin of 10-90% [2]
  • ensure profitability and competitiveness even in the toughest market conditions

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.

[1] Based on Gartner research from 2004, companies who implemented BPM saw 95% success rates with their projects (compared to numbers closer to 25% for overall IT projects and ERP projects) and things only got better since then; however, business automation does not require BPM or documenting and mapping all processes in your organization; significant benefits can be reaped by focusing on individual tasks or processes without the need to introduce full-fledged BPM solution into your team or organization

[2] (…) The value of the potential benefits of automation, calculated as a percentage of operating costs, ranges from between 10-15 percent for a hospital emergency department and a grocery store, to 25 percent for aircraft maintenance, and more than 90 percent for mortgage origination. (…), from "A Future That Works: Automation, Employment, And Productivity" by McKinsey Global Institute


Micro-services

OSGi, Docker, Kubernetes, Serverless based microservices

Micro-services, microservices, μservices, SOA 2.0, etc.–regardless of which label you use, the widespread cultural and technical adoption of Agile methods, DevOps culture, cloud, containers and CI/CD methods makes it possible and ever more efficient to build truly modular, large-scale, service-optimized software systems for both internal and commercial use.

The approach to distributed systems embodied by microservices promotes the use of finely grained, autonomous services, having their own lifecycles, collaborating together, modeled around business domains–thus avoiding problems of traditional tiered architectures, with benefits such as independent DURS (Deploy, Update, Replace, Scale), fault and resource isolation, technology heterogeneity, greatly improved efficiency, and many more.

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:

  • Refactoring into microservices
  • Migrating to OSGi
  • Migrating to Kubernetes
  • Migrating to Serverless
  • API Development
  • API Integration
  • API Documentation

Serverless Computing

Serverless can significantly reduce your operational costs

Most web applications, including simple applications like contact, RFQ, or product order forms–utilized as part of an otherwise static website–see inconsistent usage, with peak periods alternating with times of little to no traffic.

If so far you paid for a server which was constantly running and always available, even when unused, only to handle such form submissions or web application functionalities that server is no longer needed!

Depending on usage patterns of your existing web application or website, you can save hundreds to thousands of dollars per year by migrating to serverless.

Serverless enables scalability on-demand, it will respond instantly and will not incur costs when at rest, it eliminates the need for system administration and paying for idle resources, thus significantly reduces operational costs–can even bring them down to zero!
  • Most major serverless providers (AWS Lambda, Azure Functions, Google Cloud Functions, IBM OpenWhisk) include up to 1 million executions in free-tier each month
  • More intensive usage will incur minimal additional charges, e.g. $0.21 per each additional 1 million executions for IBM OpenWhisk or $0.41 per each additional 1 million executions for AWS Lambda; see e.g. http://serverlesscalc.com/ to compare costs across different serverless providers
  • All operational costs, if incurred, are payable to serverless provider of your choice

Serverless facilitates adoption of Nanoservices, Microservices, SOA Principles, and is a good fit for all types of forms requiring processing (e.g. contact, RFQ, product / service order, payment, registration, send file forms) and web applications.

I will work with you to clearly understand your needs, as well as your existing application or website if this a migration project, scope the project, then perform any necessary engineering work to deliver the final solution. All code will be deployed to serverless provider of your choice (AWS Lambda, Google Cloud Functions, Azure Functions, IBM OpenWhisk, Kubeless, Cloudflare).


Cognitive Computing

Scale human expertise and augment human intelligence

Through mimicking the way the human brain works, combining machine learning, reasoning, natural language processing, speech, vision, and human computer interaction, cognitive computing is ideally suited to scale human expertise and augment human intelligence.

The potential of cognitive computing can be applied across most major industries which rely on data-driven decision-making to improve outcomes, where efficiency and accuracy gains can be realized through the automation of some processes, and where mass-consumer personalization at scale is required.

Cognitive computing facilitates:
  • Making better decisions, acting more quickly and achieving more successful outcomes
  • Delivering relevant information and advice when needed
  • Reducing information overload
  • Reducing errors
  • Minimizing loss and damage
  • Increasing efficiency and productivity
The simplest way to start is by integrating one of the available cognitive products and services into your existing workflows, such as:
  • Speech to Text–convert spoken audio to written text for understanding of content and additional analysis
  • Text to Speech–convert written text to natural voice in a variety of languages and voices
  • Emotion Analysis–understand emotions and communication style in text
  • Personality Analysis–predict personality characteristics, needs and values through written text
  • Language Translation–translate text from one language to another
  • Natural Language Classification–reveal the structure and meaning of text, extract information about people, places, and events
  • Visual Recognition–tag, classify and search visual content

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.


Migrations

Future-proof your platforms and development environments

Transforming your legacy application or system into modern, newer or changed version, with similar or extended functionality, is sometimes the only viable option. The alternatives–such as complete rewrite or replacement with proprietary / licensed product–might be out of question.

The benefits a well executed migration process brings are numerous, including future-proofing your platforms and development environments, enabling development of new features, enabling Continuous Integration (CI) / Continuous Delivery (CD), saving time and money, and much more.

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 microservices
  • Migrating to OSGi, including migrating from Spring Dynamic Modules to OSGi Blueprint and/or OSGi Declarative Services
  • Migrating to Cloud (incl. migrating to cloud-native databases such as CockroachDB)
  • Migrating to Kubernetes
  • Migrating to Serverless
  • Migrating to centralized logging
  • Migrating project build (e.g. Eclipse project build to Tycho, Ant to Maven, etc.)
  • Migrate dynamic CMS / WordPress backend website to static

Solutions Delivery

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, scope the project, then perform any necessary engineering work to deliver the final solution, whether it is:

  • Integration, including: API integration (RPC, SOAP or REST), Direct integration–when no API is available, Enterprise Application Integration, Programmatic Infrastructure Automation Integration
  • Automation, including: Programmatic Infrastructure Automation, Build Automation, Documentation Automation, Business Automation
  • Micro-services
  • API Development
  • Serverless Computing
  • Cognitive Computing
  • Customization or enhancement
  • Refactoring or migration

Consulting

Gain insights necessary to take effective action

Tap into the 15+ years of experience and expertise gathered from my work with clients from the USA, UK and EU across diverse industries such as IT, Pharmaceutical, Media, Electrical equipment, Education, Travel, Consulting, Banking, Retail, Finance, Advertising, Real Estate and Fitness.