firstworksBusiness IT and Software Development Services
About Business IT Services Software Development Services Open Source Projects Contact Us News

Software Development Services

Diverse platform, language, and database experience.

Strength in application and database design.

Specializing in custom business systems, systems integration, modernization, optimization, and database migration.



Custom Business Systems

"This collection of shared spreadsheets and documents is becoming unweidly. Can we convert them to a database with a web-based front-end?"

Of course.

This is a classic situation that many businesses encounter as they grow. Spreadsheets, documents, and file shares are general-purpose tools that can be adapted to serve your business needs. But, a system designed with those business needs in mind automates tasks, reduces work, and enables your organization to scale well.

Let us leverage our extensive application and database design experience to implement a custom business system for you.


Systems Integration

"A client/partner/third-party periodically provides data feeds that we need to import into one or more of our systems. How can we integrate this data feed?
and/or
"A client/partner/third-party wants us to provide them with data feeds from one or more of our systems, periodically. How can we provide this data feed?

Many businesses eventually encounter the need to import or export data feeds. As common as they are, feeds can be surprisingly challenging to implement. There are diverse formatting standards. They can be computationally expensive. Data may need to be imported or exported to/from a combination of databases and flat files residing across multiple servers. Strategies for processing feeds depend on the nature of the data and the systems involved.

"Can our e-commerce system talk to our accounting system?"

Your accounting system knows the price and availability of your items. Can they be fed into the online catalog automatically? Can an order from the checkout process be fed into the accounting system without having to type it in manually? Perhaps. The strategy depends on the systems involved.

"Can our custom system authenticate users against <some-other-system>?"

If the other system provides an API, speaks some known protocol, complies with some published standard, stores its data in a database or in some accessible format, or provides source code, then most likely, yes. Again, the strategy depends heavily on the systems involved.

We can leverage our diverse experience with programming languages, platforms, databases, and networking to analyze your systems and implement the right solution.


Modernization

"We have an app, written years ago, that we can't get to run on a modern operating system or against a modern database. How can I get my old app to run on a modern platform?"

Maybe the app can be ported to a more modern, supported, version of the language it was written in. Maybe sections of the app can be rewritten to support a modern database, or to integrate with other modern systems. Maybe a phased rewrite is in order.

This can be a difficult problem, requiring experience with application and database design, and with diverse platforms, languages, and databases to solve. Let is solve it for you.


Optimization

"We're generally happy with our web site, but this one piece is really slow. How can we speed it up?"

Maybe it's doing something that scripting languages struggle with, like extensive math or complex string manipulation. Or, maybe it's pulling data out of the database, only to process it and put it back in the database. A native module, stored procedure, or even a native stored procedure may solve the problem.

Maybe the database just needs a few indexes. Maybe something needs to be cached to reduce the complexity of a search. Or, maybe it's something else entirely.

"We pull data feeds each night, but the import takes hours to run. How can we speed up our feeds?"

The feed may need to be pre-processed, sections might need to be processed in parallel, it may need to be pulled into an intermediate database to reduce the complexity of searches within the data...

Optimization problems are common, but the solutions are diverse and often require some computer science to get right. We can figure it out.


Database Migration

"We need to upgrade the database, but it will be really expensive. Can we migrate the data to an open source database and update our apps to use it instead?"

Maybe. Modern open source databases rival their commercial counterparts in features and performance, and in most cases more than meet the needs of small to medium sized business.

But, differences in client API's, SQL, datatypes, key generation, stored procedures, and other minutiae usually prevent one database from just being dropped in to replace another. The logistics of a conversion can be complex, but the effort can still be cost effective, especially when considering the potential cost of future upgrades.

"We inherited a custom app that was written to use Microsoft SQL Server, but we own a copy of Oracle and we'd like to use it instead (or vice-versa). Can we make the app use one database instead of the other?"

Again, maybe. You can face the same challenges migrating from one commercial database to another as migrating from a commercial to open source database, but you can also reap similar rewards.

We have done a lot of these kinds of things, and we have some clever tools that can make it much easier.



Contact Us for more information, or to request a quote.



Copyright 2017 - David Muse