Solution Architect
Roles & Responsibilities
1. Architectural Accountability: Take complete ownership of the high-level design for all new features and services, particularly for complex modules (E.g. Electronic Medical Records (EMR), Revenue Cycle Management (RCM), Material Resource Planning (MRP), Stock Management, and Accounts.
2. Design & Enforcement: Champion, mentor, and enforce the use of modern software design principles. You will be the final authority on ensuring DDD, Design Patterns, SOLID, and Clean Architecture are practically implemented in our codebase.
3. Technical Translation: Analyze complex business requirements from the hospital domain and translate them into detailed solution designs, component models, and a clear technical roadmap.
4. Technology Governance: Collaborate closely with developers, project managers, and business analysts to ensure the architectural vision is implemented correctly using our core tech stack: Flutter (using VIPER Architecture), Spring Boot, JPA, and Hibernate.
5. Database Design: Design and govern the evolution of scalable, high-performance data models for our Oracle and PostgreSQL database environments.
6. Guidance & Review: Provide decisive technical leadership and guidance to development teams. Conduct rigorous design and code reviews to ensure all code adheres to the established architectural standards.
Professional & Technical Skills
Must-Have Qualifications:
1. Experience: 5+ years of proven experience in a solution architecture, technical lead, or senior engineering role within an enterprise software environment (ERP, HIS, or similar complex domains). [year of experience is negotiable if you are confident in the above mentioned skills]
2. Architectural Mastery (Theoretical): Expert-level mastery of software architecture patterns, with specific, deep knowledge of Domain-Driven Design (DDD), GoF Design patterns, SOLID principles, and Clean Architecture.
Architectural Mastery (Practical):
1. Demonstrable, hands-on expertise in applying Object-Oriented Design (OOD) and SOLID principles to build maintainable software.
2. Proven ability to use Design Patterns (e.g., Strategy, State, Specification, Factory) as a primary tool to replace complex, procedural, and deeply nested conditional logic (if/else branching, or Switch cases).
3. Tech Stack Proficiency: Strong, hands-on command of the Java ecosystem, particularly Spring Boot for application development and JPA/Hibernate for data persistence.
4. Database Expertise: Deep knowledge of relational database (RDBMS) design, optimization, and performance tuning, specifically with PostgreSQL and Oracle.
5. Leadership: Proven experience in making and enforcing high-stakes technical decisions and mentoring development teams in advanced concepts.