Writing code is hard

At Pathomation, we know a thing or two about software development. 

If you are working in a (large) organization, you probably know a thing or two about it, too. And you know that it’s non-trivial. You have different software, different databases, different scanners

That economies of scale come from integration, is well accepted. The devil is in the details on getting that integration done. Don’t let integration turn into step 2 of SouthPark’s business plan!

Let us help you

We know how to best integrate our platform with third-party components. We wrote it, so we know the intricacies of it. 

We distinguish between two kinds of software development consultancy that we provide: feature requests and custom development.

Feature requests

While we constantly work to improve the components in our platform, as an end-user you’ll often find things that would make the software even more useful… especially for you.

Every day we make choices. While we would love to support all features of the TIFF file format, this is impractical to do. PMA.core supports the two largest cloud-storage protocols in the form of AWS S3 and Microsoft Azure, but that means that others (smaller, specializated, niche) vendor have to wait to make into our feature list. We have plugins for the largest two CMS systems, but there are any number of others that we don’t have anything for yet.

So what do you do if you really really REALLY want to have something? First, just ask. It could be that there was an oversight on our end and that we just missed something in a particular file format. We know where we stand, and we’re not too bigheaded to admit our mistakes.

Remember the italicized you a couple of sentences above? Occasionally you may approach us with features that are only useful for a subset of our customers. 

That’s when it becomes possible to contract with us and pay us to work on a feature now, rather than perhaps four years from now.

Here are some examples of features that people have contracted us for in the past:

  • Double the resolution of fluorescent channel handling from 8-bit to 16-bit
  • Support certain file formats 
  • Implemented third-part enterprise authentication services
  • Add additional reporting capabilities with configurable granularities

When you contract with and pay us for feature requests, what you really pay us for is prioritized feature development. It’s a timing thing, really.

The intellectual property (IP) as a result of prioritized feature development remains with Pathomation.

Custom development

Sometimes custom development is custom development. This means, you contract with us to add truly unique features to our software that only benefit your organization (or your customers).

Custom development is different from a prioritized feature request. The work we do ends up running on top of our platform components. The result can be a customer-specific Python script, a new namespace added to your Java codebase, or a set of configurable Jupyter notebooks.

Specific examples of custom development that we’ve provided for our clients include:

  • A custom panel in PMA.studio to monitor the status of in-house analytical pipelines
  • Daily-run scripts to download reports from PMA.control and feed them as performance indicators to external business intelligence applications
  • Customer-specific java namespace to ease the adaptation of our PMA.java SDK.

Typically, when a client asks for custom development, we set up a dedicated SVN project so they monitor and test their own code at all times.

Yes, you read that right. When contracting for custom development, the newly generated code becomes yours. The intellectual property (IP) of our custom work is completely transferred to you, and we do not re-sell custom components to other clients.