Apply with hirly
Principal Engineer – Software Architecture and Modernization
Abcfinancial · Hyderabad Office, India.
Upload your resume to see how well you match this job — free, in seconds, no account needed.
Your resume is used only to score it against this job. If you don't create an account, it is deleted within 24 hours.
Join ABC Fitness and become part of a culture that’s as ambitious as it is authentic. Let’s transform the future of fitness—together! Our Values Best Life We believe great work begins with great people. That’s why our culture is built on respect, trust, and belonging. We create an inclusive environment where every team member can bring their authentic self to work—because diverse perspectives drive innovation and meaningful impact. Growth Mindset We are doers, thinkers, and dreamers. At ABC Fitness, your growth is our investment. Through continuous learning, mentorship, and professional development opportunities, we empower you to reach new heights—personally and professionally. One Team From day one, you’ll be part of a team that collaborates, celebrates, and cares. We move fast, support one another, and have fun along the way. Because when you thrive, we all thrive. 

 What You’ll Do Lead software architecture and modernization Shape the evolution of legacy applications into well-structured, domain-oriented software. Define target architecture, module and service boundaries, migration seams, compatibility strategies, and incremental paths that teams can implement safely. Stay deeply hands-on in code Contribute directly to critical implementations, prototypes, refactoring, code reviews, and production fixes. Work comfortably in backend code and frameworks such as Java/Springboot, Golang, Node/TypeScript, or similar backend ecosystems, and help teams improve application structure, runtime behavior, and maintainability. Design strong domain models and APIs Create clear domain abstractions, ownership boundaries, service contracts, and APIs. Improve how business rules are represented in code and keep consumers insulated from legacy storage and implementation details. Modernize application foundations Guide framework and runtime upgrades, dependency modernization, concurrency and lifecycle improvements, and the decomposition of tightly coupled code. Use practical refactoring strategies that keep large systems releasable throughout the work. Engineer for correctness, performance, and reliability Diagnose difficult behavior through code, runtime evidence, database interactions, and dependency flows. Fix root causes in implementation and design, including concurrency defects, inefficient data access, resource contention, failure propagation, and recovery behavior. Improve data access and integration design Move business logic out of database-centric implementations and into testable application code. Design effective persistence, transaction, caching, messaging, and event-consumer patterns while preserving historical, reporting, and audit needs. Raise the bar for code quality and testing Establish strong practices for unit, integration, contract, and functional testing. Improve code review, static analysis, dependency management, feature controls, and validation so teams can change complex software with confidence. Create reusable engineering patterns Turn successful designs into clear patterns, reference implementations, libraries, and architecture decisions that help teams solve recurring software problems consistently. Turn technical strategy into cross-team execution Translate architectural risk into clear code-level priorities, decisions, ownership, and sequenced implementation plans. Partner with engineering, product, security, and data teams to move complex software initiatives from design through working code. What This Is Not This is not a people-management or architecture-only role. The engineer is expected to contribute directly to implementation and production outcomes. This is not limited to greenfield design or modernization for its own sake. Decisions must balance long-term software quality with migration safety, business value, and the realities of changing production applications. What You Bring Deep backend and distributed-systems engineering You have substantial experience designing, building, operating, and evolving production backend systems, services, APIs, and distributed applications. Credible hands-on implementation depth You can move from architecture into code, configuration, instrumentation, and diagnosis. Exact experience with Java/Springboot or Golang or Node/Typescript is relevant, but the key here is moving ideas into shippable software solutions and not on the technology. Service transformation and architecture judgment You can define service boundaries, domain ownership, migration strategies, integration patterns, and practical architecture decisions for complex existing environments. Production reliability and performance expertise You can trace difficult behavior through application code, runtime state, database interactions, and dependency flows, then implement fixes that improve correctness, concurrency, performance, and recovery behavior. Software design and refactoring depth You can improve large codebases through domain modeling, modular design, dependency management, incremental refactoring, and carefully chosen abstractions. You know how to create better seams without forcing risky rewrites. Data and integration depth You understand relational databases, SQL behavior, messaging, event consumers, data movement, caching, and the tradeoffs involved in separating applications from legacy data dependencies. Strong testing and code-quality discipline You treat automated testing, code review, static analysis, dependency health, secure coding, and production validation as essential parts of software design—not downstream concerns. Principal-level technical leadership You create clarity across teams, challenge weak assumptions constructively, communicate risk in business terms, and help groups converge on decisions they can execute. An opportunity-focused approach to AI-assisted engineering You actively look for ways AI can expand engineering leverage across code comprehension, design exploration, implementation, refactoring, test generation, debugging, documentation, and planning. You help turn promising uses into repeatable practices that make strong engineers more effective. Bonus Points Experience modernizing large complex software systems, including runtime and framework upgrades. Experience decomposing monoliths, extracting services, or establishing modular boundaries within large existing applications. Experience with Oracle or other enterprise relational databases, Kafka or similar messaging systems, and complex data migration or reporting dependencies. Experience with profiling, runtime instrumentation, concurrency analysis, database-performance diagnosis, or tuning. Experience applying AI coding agents for codebase analysis, implementation, testing, and software modernization. What Success Looks Like Modernization advances without destabilizing the business Critical migrations have clear boundaries, sequencing, ownership, and safety controls. Teams retire legacy constraints while maintaining compatibility and operational continuity. Critical software becomes easier to change Codebases have clearer boundaries, stronger tests, healthier dependencies, and fewer hidden couplings. Teams can add capabilities and modernize incrementally without destabilizing unrelated behavior. Architecture decisions become executable Teams understand the target state, the next practical step, and the tradeoffs behind key decisions. Cross-team dependencies and risks are surfaced early and actively managed. Engineering quality improves across the lifecycle Test coverage, code review, static analysis, dependency health, and production validation become stronger and more consistent across the software in scope. AI expands engineering leverage AI becomes an effective part of how teams understand code, explore designs, implement changes, generate tests, diagnose problems, and document systems. Why This Matters ABC Fitness depends on critical software and data flows t