Technology

The technology we employ at SullivanStrickler is diverse. Our foundation and roots, though, are clearly as a technology company first and business/legal company second. Our founders come from technology backgrounds in software development, electronic engineering and Telecommunications, and our engineering staff come largely from some very low level software development and system engineering backgrounds.

Some of our most talented resources don't even consider themselves as computer savvy, but rather more math enthusiasts who have abilities to determine patterns in data. It is this type of skill and experience that lends itself to reverse engineering the data structures used by today's email, database, archiving, and other complex systems. In its very simplest description there are two fundamental ways to move or extract data from a storage repository or medium:

  1. Rebuild an identical environment to the one that created the data in the first place.
  2. Analyze the patterns and structures of data residing in the repository or media that enables the developers to write code that can move the same data in the same way as the original environment.

There are advantages to both methods, but the flexibility that writing the code brings can be very useful and lends itself well to overcoming hurdles like data expiration policies, password protection, data set sequencing issues, and speed of data transfer. It can also enable the user to be much more targeted in pursuing data, perhaps just certain file types or only certain metadata. The time to relevant data can be much shorter when using these techniques, and we refer to them generally as "non- native" data restoration techniques. The type of code that gets written to obtain very specific data needs to be low level, and so we may code in C, or C++ to enable the specific granular instructions to the firmware in data devices. We will also use much higher level and more modern languages when it suits, like C#, Java or Python, and in many cases simple scripting can be very useful. It is all about what is most appropriate for the task in hand.

Some of our most talented resources don't even consider themselves as computer savvy, but rather more math enthusiasts who have abilities to determine patterns in data. It is this type of skill and experience that lends itself to reverse engineering the data structures used by today's email, database, archiving, and other complex systems. In its very simplest description there are two fundamental ways to move or extract data from a storage repository or medium:

These skill sets and experience make us an ideal partner for solving complex data problems like the recovery, restoration or movement of chunks of data. Whether it be data migration challenges from mail archives, corruption of data residing on disk or optical media, recovery of data from overwritten or damaged media, or restoration of targeted media for legal requirements. We have seen it, done it and bought the T shirt, but we also admit that this process is never ending due to new formats and data structures constantly being introduced worldwide.

We don't build everything we need. We use third party products as and where they do a perfectly good job and are already trusted, such as forensic imaging of disk drives, or perhaps hosting of data in a repository, but in all cases we use the technologies ourselves and understand how to achieve the best results from them.