Engineering stack
What we build with, and why.
We choose tools that give us control, performance, and confidence at release. No abstraction layers we don't understand. No frameworks adopted because they were trending. Every choice here has a reason.
iOS — Native
Every iOS app we ship is written entirely in Swift and SwiftUI. No wrappers, no bridges, no compromises. Native means full access to every platform API, frame-perfect animations, and performance that feels right on Apple hardware.
Swift
Primary language for all iOS development. Strong typing, value semantics, async/await concurrency.
Android — Native
Android apps are written in Kotlin with Jetpack Compose as the UI layer. We follow modern Android architecture guidelines — unidirectional data flow, ViewModel, and structured concurrency with Kotlin coroutines.
Kotlin
Concise, expressive, and null-safe. Coroutines and Flow handle all async work cleanly without callback chains.
Multiplatform — Shared Logic
Business logic written once, running on both platforms. We use Kotlin Multiplatform to share domain, data, and networking layers while keeping each UI 100% native. This isn't a compromise — it is the correct architectural boundary.
KMP — Kotlin Multiplatform
Shared code layer for domain models, use cases, repositories, and networking. Compiles to JVM for Android and native frameworks for iOS via Kotlin/Native.
Build System & Tooling
Build infrastructure is often where engineering quality shows most clearly. We invest in reproducibility, caching, and automation so that every build is fast, every release is deterministic, and no one's local machine is a snowflake.
Bazel
Remote build execution and caching across iOS and Android targets. Hermetic sandboxing ensures builds are reproducible regardless of environment.
Observability & Backend
We keep backend dependencies minimal and intentional. What we do use is chosen for reliability, privacy alignment, and operational simplicity — nothing that requires a dedicated ops team to maintain.
Firebase
Used selectively for remote config, push notifications, and A/B testing infrastructure. We avoid Firebase as a primary datastore to keep data ownership clear.
Distribution & Release
Shipping is a first-class concern. We treat the release pipeline as part of the product — versioned, automated, and auditable. Every app goes out the same way every time.
App Store Connect
Primary distribution channel for all iOS apps. Managed via App Store Connect API for automated metadata updates and phased rollouts.
This page reflects the tools we actively use and recommend. Stacks evolve — if you are evaluating us for a project and have specific constraints, reach out directly.
Start a conversation
Tell us what
you're building.
No sales process. The engineers who will actually build your product read every message.
bigltradingcompany@gmail.comWrite →