Engineering

Desde a fundação em 2003 construímos software, desenvolvemos algoritmos, investigamos tecnologias de base e operamos sistemas.

Stack principal

  • Imagem, Documentos e Linguagem Image Processing / OCR / Full-Text Search / Algorithm Design / LLM / Vision Models / Python
  • Sistemas Empresariais e de Comércio Web Systems / Payments / CMS / Database Engineering / PHP / TypeScript / Node.js / AWS / GCP / Cloudflare
  • Redes e Protocolos HTTPS Proxy / Device Management Protocol / Network Performance / Wi-Fi Log Analysis / Rust
  • Sistemas Embutidos e SO Linux / C/C++ / AOSP / Yocto / Virtualization / Windows
  • Distribuição Móvel iOS / Android / Swift / Kotlin / Store Operations / Localization / macOS
  • Segurança Security Evaluation / Intrusion Detection / Audit / Key Management (CKMS)

Decisões tecnológicas

Trabalhamos em desenvolvimento móvel desde 2009, a geração do iPhone 3GS, e distribuímos aplicações próprias desde 2016. O ponto de partida foi o que o iPhone tornou possível: um dispositivo potente que cabe numa mão, ligado à rede, capaz de levar um serviço a qualquer parte do mundo.

O que construímos regressa até nós como dados de utilização. A tecnologia e a UI/UX são avaliadas continuamente no ambiente real, e distribuir aplicações próprias dá-nos uma escala de validação que os projetos isolados raramente proporcionam. O que aprendemos aí reflete-se também no desenho fora do universo móvel.

Em 2016 comparámos Xamarin, Cordova e React Native ao nível da implementação, e o Flutter é avaliado desde o lançamento público. Hoje a via principal é a implementação nativa em Swift e Kotlin, com SwiftUI em produção desde a geração iOS 15.

Escrever próximo do sistema operativo e do hardware permite afinar a velocidade medida e a percebida na renderização e na câmara, e usar novas funcionalidades do sistema ou bibliotecas C/C++ sem esperar por uma camada de abstração. As aplicações mantidas durante anos ficam também a salvo de alterações disruptivas do lado das frameworks.

Demos

BLE · Wi-Fi · Barcode

Barcode-Based Device Readout

As leituras do instrumento são recolhidas por BLE, Wi-Fi ou código de barras.

O instrumento transmite as leituras sem fios e apresenta-as em tempo real como código de barras no ecrã LCD. A aplicação lê o código com a câmara e regista as leituras.

ARKit · On-Device ML

On-Device AR Recognition

Os objetos na imagem da câmara são reconhecidos no dispositivo e identificados na vista de realidade aumentada.

Cada etiqueta fica ancorada à posição do objeto e permanece sobre ele quando o dispositivo se move.