Chief Architect who has worked on enterprise level application design and who worked on legacy applications developed using .Net, C, C++, C#, Object C and refactored to the latest technologies like Spring, Springboot.
Basically, who designed an application into microservices architecture from monolithic structure.
Location: Hyderabad, India
Our Client is the premier software solution provider for energy trading, logistics and risk management in the global crude oil, refined products and energy derivatives marketplace. team includes some of the most experienced software designers, developers and business analysts in the commodities industry today. Since our inception, our main goal has been to provide the trading community with the most robust, user-friendly, enterprise-wide software package available. We continue to launch new products that address customers' needs and adjust to dynamic market demands.
Reports to: Direct report to CTO.
Direct reports: There will be a design team comprising up to 6 resources that reports to this role. The designers are based in Hyderabad, India and the role can be based in Hyderabad or Dubai. For either location, short duration travel of up to 1 week per month (leaving Sunday evening, back Friday night to ensure 5 full days per month in the alternate office).
Role purpose: 100% FTE allocation to development of a series of designs and overall solution roadmap for refactor and rearchitecting a series of legacy apps.
There is a behemoth solution developed for a client server platform .Net (core), Java, OC and VB6 which must be ported to web native based on ReactJS (Symphony). There is a second legacy web native/Java solution to be integrated with the first product such that a multi-commodity configuration can be achieved including all variations that exist with trading different commodities (Alchemy). There is a third product being acquired from outside which must align (Symphony Credit) and there will be ongoing co-development of more products alongside our own engineering. Overall, the current set of solutions must be refactored and rearchitected to create around 15 stand alone products with separate UI, dbase and so on plus service integration so they can be engineered, supported and sold as separate but related products with a common UX. In addition, the designs (per product and overall) must achieve a service (not product) orientation, an event driven design, removal of technical debt and modernized. In the engineering cycle the outcome must contribute to theachievement of a CI/CD with frequent (daily), automated develop - build - test and deploy steps in the value chain through Microsoft Azure DevOps in exchange for the current annual, manual delivery
Technical Roles and Responsibilities :
[SFIA alignment: ARCH-L6 | DESN-L5 | SWDN-L4 | NTDS-L3 | HWDE-L5 | PORT-L4 | DTAN-L2 | DBDS-L3 | UNAN-L3 | HPCC-L4 | FEAS-L4 | REQM-L3 | SCTY-L3]
- Leads the development of architectures for complex solutions ensuring consistency with agreed requirements.
- Establishes policies, principles and practices for the selection of solution architecture components.
- Manages trade-offs and balances functional, service quality and systems management requirements within a significant area of the organization. Communicates proposed decisions to stakeholders.
- Coordinates and manages the target architecture across multiple projects or initiatives. Maintains a stable, viable architecture and ensures consistency of design and adherence to appropriate standards across multiple projects or initiatives.
- Designs large or complex systems and undertakes impact analysis on major design options and trade-offs.
- Ensures that the system design balances functional and non-functional requirements.
- Reviews systems designs and ensures that appropriate methods, tools and techniques are applied effectively. Makes recommendations and assesses and manages associated risks.
- Adopts and adapts system design methods, tools and techniques. Contributes to development of system design policies, standards and selection of architecture components.
- Designs complex software applications, components and modules.
- Uses appropriate modelling techniques following agreed software design standards, guidelines, patterns and methodology. Creates and communicates multiple design views to balance stakeholders' concerns and to satisfy functional and non-functional requirements. Identifies, evaluates and recommends alternative design options and trade-offs.
- Models, simulates or prototypes the behavior of proposed software to enable approval by stakeholders, and effective construction of the software. Verifies software design by constructing and applying appropriate methods.
- Reviews, verifies and improves own designs against specifications. Leads reviews of others' designs.
- Specifies the technical configurations and components required for a small network or a network segment in a more complex infrastructure.
- Follows organizational architectures and standards.
- Specifies and designs complex hardware components/systems.
- Selects appropriate design standards, methods and tools, consistent with agreed enterprise policies and ensures they are applied effectively.
- Undertakes impact analysis on major design options and assesses and manages associated risks.
- Ensures that hardware designs balance functional, quality, safety, security, systems management, reliability and sustainability requirements.
- Reviews others' designs to ensure selection of appropriate technology, efficient use of resources, and effective integration of multiple systems and technology. Contributes to policy for selection of components.
- Designs, verifies, documents, amends and refactors complex software configurations for deployment.
- Contributes to the selection of the software configuration methods, tools and techniques.
- Applies agreed standards and tools, to achieve well-engineered outcomes.
- Participates in reviews of own work and leads reviews of colleagues' work.
- Establishes, modifies or maintains simple data structures and associated components.
- Uses specific data modelling and design techniques under guidance.
- Interprets installation standards to meet project needs and produces database or data warehouse component specifications.
- Develops appropriate physical database or data warehouse design elements, within set policies, to meet data requirements.
- Applies standard techniques and tools for developing user stories and eliciting user experience requirements.
- Organizes and structures user experience analysis.
- Works with stakeholders to prioritise requirements and resolve conflicts.
- Develops moderately complex solutions that use high-performance computing environments to address real-world problems.
- Applies a range of high-performance computing techniques with sensitivity to the limitations of the techniques. Uses input and feedback from experts as appropriate.
- Analyses the complexity, scalability and performance of algorithms, including massively parallel implementations, and makes or recommends improvements.
- Selects relevant feasibility assessment approaches and techniques.
- Identifies the range of possible options. Undertakes short-listing of options and feasibility assessment.
- Engages with internal and external stakeholders to get the information required for feasibility assessment.
- Supports preparation of business cases including cost/benefit, impact and risk analysis for each option.
- Defines and manages scoping, requirements definition and prioritization activities for small-scale changes and assists with more complex change initiatives.
- Follows agreed standards and applies appropriate techniques to elicit and document detailed requirements. Provides constructive challenge to stakeholders as required. Reviews requirements for errors and omissions.
- Prioritizes requirements and documents traceability to source.
- Provides input to the requirements base-line. Investigates, manages and applies authorized requests for changes to base-lined requirements, in line with change management policy.
- Applies and maintains specific security controls as required by organizational policy and local risk assessments.
- Communicates security risks and issues to business managers and others. Performs basic risk assessments for small information systems.
- Contributes to the identification of risks that arise from potential technical solution architectures.
Suggests alternate solutions or countermeasures to mitigate risks. Defines secure systems configurations in compliance with intended architectures.
- Supports investigation of suspected attacks and security breaches
Other Roles and Responsibilities:
- Adherence to the company Engineering Excellence practice by following mandated practices and patterns.
- Accounting for personal daily time and attendance.
- Such tasks as the Company may reasonably request from time to time
Technical Experience and Expertise:
A broad range of technology knowledge to appropriate level of competency/qualification including but not limited to:
- Microsoft Azure AAD including best practice framework
- Microsoft Azure VPN/Bastion/CLI
- Microsoft Azure firewall, virtual networking
- Microsoft Azure DevOps (build, test, deploy) pipelines (with self-hosted agency)
- Microsoft Windows Defender EPP
- Microsoft Windows Server
- Microsoft Exchange, Teams, Sharepoint, M365
- Microsoft InTune
- Microsoft Cloud Security services and toolsets (ATP, ASR, DLP)
- Microsoft IAM (PIM, Conditional Access, AAD tokens, RBAC, JIT)
- Terraform IAC
- Microsoft Backup & Recovery (RSV)
- Microsoft Azure IaaS, PaaS and SaaS solution (full service range)
- Microsoft Visio
- Microsoft SQL Server
- Java, .Net (core), OC and VB6
- ReactJS
- MongoDb
- Atlassian JIRA & Confluence
- Aha!
- Freshdesk FreshService
- 1Password password manager
Skill Set:
- Be self-motivated, proactive with thoroughness and attention to detail in communication, documentation etc. without assumption.
- Strategic and analytical thinking with ability to grasp internal and external customer requirements.
- Ability to conceptualize solutions and present ideas to management and stakeholders
- Great communication and negotiations with the ability to be proactive in adapting to technology needs and requirements.
- Organization, time management and team leadership.
- Excellent written and verbal communication skills with the ability to prepare and eventually deliver presentations to audiences, demonstrating knowledge of domain and technology.
- Strong moral compass and strength to prevent breach of company policies, standards and procedures (eg: granting unapproved access) in the face of pressure to fulfil business demands
Experiential Requirements:
- 10+ years experience in modern cloud native solution design ideally within the context of a software engineering company building commodity trading or at least financial services solutions.
- Min 5 years experience in leading a software design team in a cross border environment.
- Credible examples of large scale, complex solution design with specific example of migration from client-server behemoth legacy app to refactored and rearchitected modern, web native app engineered through a rapid CI/CD pipeline.
- Demonstrable success in IaaS and PaaS software engineering and SaaS solution hosting in a dynamic and modern environment BUT with a significant list of legacy transition to complete.
- Knowledge of and experience in a range of design and modelling structural components such as (but not limited to) shape libraries, frameworks, ref architecture, MS best practice patterns and so on
Didn’t find the job appropriate? Report this Job