Software Architect
Apply NowRole Overview:
As an architect, your primary mission is to architect current backend, frontend and mobile landscape from multiple overlapping producs into a more unified, modular platform.
You will define which capabilities should become shared platform services and which should remain product-specific.
Key Responsibilities
- Define a long-term platform architecture and modernization roadmap.
- Identify duplicated domains across backends and convert them into shared services.
- Leverage AI-assisted engineering and design tools (e.g., Claude Code, Codex, or similar) to accelerate system design, code generation, refactoring, and documentation workflows.
- Decide which domains should remain product-specific, such as sport sessions, shot data, reports, leaderboards, simulations, games, and tournaments.
- Define service boundaries, API contracts, ownership models, and migration patterns.
- Establish architecture standards.
- Guide migration using safe patterns such as strangler fig, dual-write, feature flags, and backward-compatible APIs.
- Mentor engineers and review major technical designs.
- Evaluate and recommend technologies, frameworks, and tools to support the development process.
- Work closely with DevOps to improve CI/CD, deployment, monitoring, and service operations.
- Create technical documentation, architecture decision records, and service ownership maps.
- Allocate a significant portion of working time to hands-on design review, code review, and active coding, serving as the technical quality gatekeeper across development teams.
- Contribute directly to codebases — writing, refactoring, and optimizing code — ensuring architectural decisions are validated through hands-on implementation.
Qualifications
- Bachelor’s or master’s degree in Computer Engineering, Software Engineering, or a related field.
- At least 7+ years of proven experience as a Software Architect or a similar role in software development.Strong experience architecting and modernizing complex backend systems.
- Proven experience decomposing monoliths or fragmented services into modular platforms.
- Deep knowledge of microservices, modular monoliths, service-oriented architecture, and domain-driven design.
- Strong backend development experience with Go (Golang) and/or Node.js.
- Proven experience object-oriented programming languages (e.g., C#, Java, Kotlin),
- Proven experience with FrontEnd frameworks ( React, Vue )
- Strong database design experience with PostgreSQL, MongoDB, or comparable systems.
- Experience with Cloud Platforms ( GCP, AWS )
- Experience designing APIs, service contracts, authentication flows, and integration patterns.
- Experience with cloud-native architecture, Docker, queues, object storage, and distributed systems.
- Experience leveraging AI-assisted development tools (e.g., Claude Code, Copilot, Cursor, or similar) in engineering workflows.
- Ability to balance ideal architecture with incremental delivery and business risk.
- Excellent communication skills with engineering, product, DevOps, QA, and leadership teams.
Nice to Have
- Experience with Kafka.
- Experience creating shared platform services for multiple products.
- Experience in sports technology, hardware-connected platforms, IoT, device management, or data-heavy systems.
- Strong understanding of authentication, authorization, identity providers, OAuth/OIDC, JWT, and SSO.
- Experience with migration strategies for production systems with active users.
- Experience defining engineering standards across multiple backend teams.
- Experience with payment systems, device platforms, notifications, or subscription systems is a strong plus.