Responsibilities
- This job description reflects management's assignment of essential functions. This does not prescribe or restrict responsibilities that may be assigned.
- Provide end to end technology support. Ensure ICE’s standard product offerings integrate with client delivery environments.
- Provide issue resolutions for products experiencing compatibility issues. Identify and recommend solutions for non-standard or client-specific requirements.
- Support lead architect with estimating effort for change requests. Document approach, process change for the project and share with all relevant stakeholders.
- Provide an in-depth understanding of standard ICE Learning tools and processes.
- Act as the go to person for the tools and technology requirements.
- Provide tool and development platform enablement to resources.
- Develop product enhancements as required that minimize customizations and cost.
- Participate in R&D initiatives to help the Architect Lead with the mobilization of new tools and Product Development.
- Subscribe to e-learning journals and blogs tracking the evolution of e-learning toolsets.
- Provide tool recommendations as required for new client opportunities.
- Develop web / runtime applications according to custom client requirements when required.
- Serve as a subject matter expert for all development tools, custom apps and delivery platforms.
- Develop training and support documentation for new technology solutions to be used.
Knowledge and Experience
- Bachelor’s Degree or the equivalent combination of education, training, or work experience.
- 10+ years of experience in Software Industry and 3+ years in role of Architect.
- Looking for a very strong Polygot (practice of writing in multiple languages) Programmer who has hands on experience in Java and .Net.
- Work experience in Distributed Architectures.
- Proficient in Design patterns, Modern architectural pattern and hands on experience in UML tools and Microsoft Office.
- Working inside a team developing web /app-based solution using common development languages Ability to develop end to end software solution using common software development languages without assistance or direct supervision.
- Must have an in-depth understanding RESTful service development and working with Micro Services applications using Spring Batch, Spring Boot and Swagger, OpenAPI specifications.
- Good working Experience with Databases (Oracle, SQL Server, MySql, Postgres) and deep understanding of SQL and NoSQL.
- Experience with version control systems, particularly Git, and best practices in branching and merging strategies.
- Experience with distributed messaging systems and real-time data processing.
- Understanding of microservices architecture and the role Kafka plays in event-driven systems.
- Design and code for Proof of Concepts with New Functionality/Technology.
- Exposure to DevOps processes in defining pipelines, deploying components, Deploy and configuring Docker images and managing them in Kubernetes.
- Hands on experience Web Servers and Application servers like Tomcat, Oracle WebLogic Server, JBOSS Application Server and IBM WebSphere.
- Good experience in one of Cloud platforms (AWS/Azure) and good exposure on
- if AWS (EC2, S3 Bucket, Cloud watch, Lambda, Dynamo DB etc)
- if Azure (VM, Blob, Monitor, Functions, Cosmos DB etc)
- Experience with cloud security controls and transitioning to cloud security-managed operations.
- Infrastructure Security Vulnerability Management Operations and Solid grasp of infrastructure security.
- Experience working on third party service integrations.
- Understanding of Security concepts and OAuth2, JWT, JWE is must.
- Experience on Client and Production support, Understanding of Splunk tool and very proficient of Splunk search strings and Splunk Dashboard/Reports.
- Experience on analyzing Performance reports and hands on experience on how to increase performance in Applications/Queries.
- Good to have experience on Apigee Tool and good understanding of developing and managing API’s.
- Strong English written / oral communication skills. Strong problem-solving skills and ability to carry out research as necessary Ability to multitask and manage several concurrent work assignments while meeting agreed upon timelines and commitments.
Preferred Knowledge and Experience
- Experience with UI frameworks such as Angular and/or React and Experience with front end development libraries like Material UI, Node.js.
- Experience undertaking common software quality assurance practices to validate solutions developed, Experience creating detailed software documentation.
- Exposure to NoSQL databases like Redis, MongoDB, Cassandra, Couchbase etc.
- OCP Knowhow and Hands on experience on OCP.
- Exposure to Azure DevOps and UCD Tools.