Position: Senior Software Architect
Company: TheAppSolutions
Experience required: 5y
English level: upper

**About the role**

As a Senior Architect; You possess a high degree of discipline and are capable of delivering scalable, maintainable, robust solutions that address the "Whole" business problem You will guide the development teams on Deployment strategies, scalability and help them assess the impact on infrastructure. The Senior Architect will successfully deliver solutions with high Business complexity. As an architect, you will drive the feasibility analysis for the projects and framework implementations that address cross cutting concerns for our Software Applications. You will research and introduce new tools and technologies to our existing technology stack and drive innovation for our Engineering teams.

**Responsibilities**
 
- Design and develop effective and efficient end to end solutions for complex business problems
- Responsible for non-functional quality measures including performance, availability, scalability, maintainability
- Take proactive role in project scoping, planning, design, and development to drive successful solution delivery
- Deliver solutions with high Business complexity
- Research new technologies, software, and tools and provide recommendations and/or prototypes
- Work with the development team/s on feasibility analysis for the projects
- Produce documents relating to application architecture, design steps, integration processes and testing procedures relating to each product developed.
- Define best practices in coding and design
- Review design and code to ensure its compliance with the best practices and coding standards
- Provide technical guidance and consultation to scrum teams
- Administer training throughout various phases of the development cycle
- Work in a cross-group collaborative environment
- Work with legacy code to improve the quality or to integrate the system with third party applications.

**Requirements**

- Expertise with hands-on experience in design and development of web-based enterprise software systems
- Proficient knowledge of cloud design patterns
- Prior experience in Azure cloud or other major public cloud provider technologies, EventHubs, Kafka, Redis, Kubernetes, Docker and containers as a plus.
- Strong technical skills in variety of Java technologies including but not limited to: JavaEE, Spring, JMS, AMQP, SOAP/RESTful web services, Maven, Tomcat, Core Java, JS, HTML5
- Proven skills in designing API, Front end components, core frameworks
- Solid experience with Object-Oriented principles, Design Patterns, and Architectural Patterns
- Strong experience with relational databases (SQL Server, Oracle, MySQL), familiar or experience with NoSQL databases is a plus
- Strong problem solving and creative thinking skills
- Familiar with Agile methodologies (Scrum, XP) and design modeling techniques
- Experience in application performance monitoring and tuning
- Strong communication skills, both verbal and written
- Ability to communicate design rationale and build consensus
- Ability to work both independently and in a team environment.