Skip to content

Latest commit

 

History

History
63 lines (38 loc) · 4.51 KB

expertise.md

File metadata and controls

63 lines (38 loc) · 4.51 KB
layout
default

Expertise

Projects

Our recent project experiences include the following types of products:

Single Page Web Applications

The browser has been emerging as a great first platform for desktop-class applications. For our clients we ported legacy applications from Flash and Windows to the web and also created entirely new web applications from scratch: Our standards and the demands of the modern user require a diligent approach in order to be reliable, user-friendly, and consistent. In order to achieve this, we built on mature open-source projects such as TypeScript and React with a proven combination of sound architectural designs as well as permanent tool-driven checks of every component of the final product.

TypeScript React RxJS Flux Webpack

Real-Browser Testing

Software deployed to constantly changing consumer platforms needs permanent testing during development and even after the release, to ensure that the production deployment behaves as expected. For our clients we have implemented automated, real-browser-based test setups which continually verify the software's behavior. This is not only used for line of business applications, but also games which were historically hard to test in an automated way due to their visual richness and animations.
Automating testing of all of the core functionalities frees QA from repetitive testing of the ever same functionality (which usually works), and allows them to focus on futures being in development as well as special customer integration projects, which might better be handled manually.

Selenium Docker Zalenium BrowserStack

Scraping

The publicly accessible web contains a trove of valuable information for anyone. We make this data available to our business clients, providing them with sanitized data about competitor pricing and customer demand. This allows them to focus on gaining insights from that data, instead of spending time on its acquisition.

Go Node.js Azure

Business-specific Content Management Systems

Many internal business processes are based on clerical data entry, update and retrieval. Be it a custom CRM system or inventory management tool, often times access to these is convoluted compared to standard software and therefore valuable insights are not gained from their data. By developing custom, workflow-based user interfaces we have helped several clients to speed up their processes and given them the tools to extract knowledge from the existing data.

Technologies

These are the top 3 technologies we're recently and actively using:

TypeScript

Probably the most important advancement for the development of JavaScript based application in the recent years, TypeScript gives developers the tools to prove many parts about the correctness of their programs without even running them. This creates a speedier development process as well as providing confidence during importance software maintenance tasks such as refactoring.

React

Facebook's React has become the dominant view layer for managing user interface on the client. With the right set of supporting libraries (we have made great experiences with a Flux-like architecture in combination with FRP), this allows one to create nimble frontends which are easy to evolve and grow over time.

Canvas Based Rendering (CreateJS, ThreeJS)

Sometimes HTML-based interfaces just can't deliver the specific requirements of bespoke application and game designs. In those circumstances we resort to custom-built rendering which allows us to create anything that can be expressed in pixels.

Open Source

"Thank you @tp, you are an open source hero!" - GitHub user

Often time's small-scale open-source projects get utilized in our clients' products and applications because they solve an immediate problem to a large degree. After a while though, we often find that some specific requirements are unmet, be it the ability to further customize the tool or delivering great performance in the specific environment. In those cases we aim to work together with the open source project maintainer's in order to improve the tool for our clients' needs as well as the broader community.