TECHNOLOGIES WE ARE GOOD AT

We actively use the below technologies in the development and design process.

Network Development

We have gained a wealth of experience in developing and implementing complex high-load projects with extensive infrastructure. We write most of the traffic handling services for scalable applications in C++ using the latest standards and best practices in the field. We have also introduced Golang in our projects, which is widely popular in microservice framework development nowadays.
  • TCP/UDP, BSD Sockets, Linux poll/epoll API, BSD kevent/kqueue API
  • WebRTC (server, mobile/desktop)
  • Reliable/scalable application servers
  • Multimedia streaming
  • GCM/APNS notifications
  • Cloud, CDN solutions
  • THRIFT, SSL, HTTP, HTTPS, SOAP, JSON, XMPP

Application Development

TomskSoft has a solid experience in the development of cross-platform applications for audio & video processing that use face tracking and recognition, video effects support and extensive GPU optimization. This also includes audio & video driver development for Windows and macOS, as well as Microsoft driver signing.
  • Microsoft audio/video drivers
  • WebRTC (with WS signaling)
  • Game capturing (DLL injection)
  • GPU-based hardware acceleration (OpenGL, DirectX, DMA)
  • Hardware video encoders support for recording/streaming. (Intel QSV & NVIDIA NVENC & AMD VCE)
  • Software video encoders (MFT & OpenH264)
  • RTMP streaming
  • IP camera capturing
  • Desktop capturing (GDI & DirectX)
  • Qt UI development
  • WebSocket server for real-time notifications (Golang)
  • Real-time face tracking/recognition and pose estimation.
  • Web subscription management systems (payment systems integration Avangate)

Mobile development

In our mobile projects, we tend to reuse the code while working at the lowest programming level possible to ensure the maximum utilization of hardware resources. As a part of our solution, we create a middleware layer that handles network communication, audio & video encoding and compression by utilizing mobile device’s hardware resources and basic application logic.

Android

  • Java, Kotlin
  • rxJava, protobuf
  • Native development
  • Media development
  • Unit testing
  • Integration with Fabric, Firebase, Intercom, Facebook SDK
  • Ads: AdMob, Mopub
  • Material design

iOS

  • UIKit
  • Foundation
  • Swift, Objective-C
  • RxSwift
  • Protobuf
  • CoreData
  • Sourcery
  • Fastlane

Web Development

Any commercially viable project is represented on the web in some way or another, which may include basic download pages, payment systems integration, administrative portals for customer support and product management. An important element here is the real-time interfacing between all project components and services, which we implement through protocols, queues, and workload scaling. Virtually all of our projects are stored in cloud platforms and utilize their resources to the fullest. Web development is becoming increasingly important in mobile devices, with tasks ranging from adaptive web design development to tight integration with an app at the Deep link and WebView levels. Our projects use microservice frameworks, and along with PHP frameworks, we widely use Golang.
  • PHP, Golang, Node.js
  • Frameworks: Yii2, Laravel, ReactPHP
  • Memcache, Redis
  • Ngnix, Apache
  • MySQL, MongoDB
  • Social network integration (Facebook)
  • Intercom, branch.io integration
  • Kafka, ZMQ
  • Adaptive HTML layout, HTML5, CSS3
  • Vanilla JS, Vue.js, Angular, Polymer
  • Thrift, JSON-RPC
  • OpenCV
  • Browser WebRTC, P2P, STUN, WebSocket
  • Cleverbridge, Paypal, Stripe, 2Checkout
  • GeoIP (MaxMind-based)

Machine Learning

Machine learning, neural networks, advanced text analysis:
  • Sequence tagging
  • Text classification
  • Sentiment analysis
Main models: CRF and neural networks (feed-forward, recurrent and networks with dynamic structure) Frameworks: sklearn, spacy, pytorch, dynet, Stanford CoreNLP, Facebook FastText.

Autotests

One of the major challenges in product development is speeding up the delivery of product updates to the market while keeping the quality a top priority. For such purposes, we do our best to automate tests when it is feasible. As one of the solutions, we implement unit testing that helps to refactor the codebase and track the function-level errors, however, external testing still remains essential in large-scale projects. Our expertise enables us to automate business logic tests in web, desktop, and mobile applications.
  • JUnit , Webdriver, Serenity, Yandex QATools HtmlElements
  • Win application autotest
  • NUnit, TestStack White и Selenium Webdriver
  • Squish GUI Testing
  • Ranorex
  • Appium

CI/Build/Package manager

Build & deploy automation and package manager integrations significantly improve efficiency across all projects.
  • Jenkins, Teamcity
  • Conan, Artifactory

Design

Our design team creates user-friendly interfaces and is capable to deliver anything from prototypes to detailed design projects.
  • Sketch, Zeplin, Photoshop, Illustrator, Adobe After Effects
  • Atomic, Supernova, Principle

Version Control Systems

  • Git
  • Mercurial
  • Subversion

DevOps/Sysadmin

Whatever your project calls for, with over 15 years of experience our DevOps experts will supply your needs regardless of the scope and complexity. Cloud deployments, application hosting, infrastructure support and maintenance, dedicated servers, clusters, analytics, load-balancing, infrastructure and server health monitoring, configuration management are among the many services our DevOps team has to offer.

Cloud Services:

  • AWS
  • DigitalOcean
  • OVH
  • CloudFlare
  • Azure
  • Google Cloud

Containers and Orchestration:

  • Docker
  • Kubernetes

Analytics:

  • ELK Stack

Configuration Management:

  • Ansible
  • Puppet
  • Chef
  • Terraform

CI/CD:

  • Gitlab CI
  • Jenkins
  • Teamcity
  • Artifactory
  • Conan

Monitoring:

  • Zabbix
  • Prometheus & Grafana

We are always ready for business solution.