Technical Solution Engineer
Be a part of our engineering team that is responsible for creating cutting-edge products and experiences by applying your expertise in software development to real-world situations.
Responsibilities
- Implement the spring boot Application using J2EE container using Java/Kotlin. – 5%’
- Implement the micro service architecture using spring boot to leverage the application to run with embedded server.
- Implement the JPA to run the embedded database like H2 DB or mariaDB in lower environment which provides the portability .
- Evangelize APIs and best practices for building/consuming RESTful APIs – 5%
- Implement Domain driven RESTful API’s using spring boot 2.6 or higher version
- Identify the Domain fields and create the DTO’s at service level
- Implements the Lombok features in DTO’s
-
- Build the Spring boot custom starter parent to provide all dependencies in one place to reusability for all other modules
- Implement the Telemetry and Traceability in spring boot core module
- Strictly follow the rest API standards which includes the HTTP status and self-explanatory error codes
- Update the API information at API gateway level and should follow the existing Oauth mechanism.
- Design and publish the swagger document which includes module wise API information
- Provide the valid Error code and description in swagger document
- Implement Authentication and Authorization (AAP) using spring security to protect the restful API. – 5%
- Write the code to protect the API and access the service based on the business provided role
- Implement the Oauth with JWT token to protect the API’s
- Retrieve the client details from JWT encrypted token
- Validate the JWT token with RSA Public key
- Integrate Log4j2 logs with Kibana and provide the application wise search log pattern for easy navigation to access the application logs. – 5%
- Implement the AI/ML for log analysis to detect anomalies in the application
-
- supervised and unsupervised learning on log anomalies based on the events which configures at application like based on number of events and occurrence
- classifies the probability that certain words in a log line are correlated with an incident .
- Write the code to consume the stream of data from Kafka Topic and Ensure Unit test cases coverage should be 85%.– 5%
-
- Being as architect, design the application deliverables and technology upgrades on time without colliding the releases and without impacting the business
- Implement the aspect programming and incorporate ethe unique UUID at transaction level
- Implement the BDD test cases using cucumber framework and Implement the front end application using angular in node js. – 5%
- Identify the screens required to implement and segregate the service and UI classes which can be reused across the screens
- Learn and upgrade the new version of angular applications
- Writing the Typescript classes with required variable and functions
- Fix the Lint errors which reduces the JavaScript error at runtime
-
- Ensure the quality of the software product should meet all the requirements n Junit and adherence to Junit coverage of minimum 85%
- The test cases should run at CI/CD level and identify at build level to decide go or no go.
- Build prototypes to prove out new concepts. – 5%
-
- Implement the nonblocking Rest API’s using the quarks for light weight microservices.
- Implement the Portable deployment microservices using the Kubernetes supported platform
- Design and build Oauth 2.0 for the authorization of API’s
- Write the CI/CD pipeline to automate the deployment process. – 5%
- Implement the CI/CD process when merge request raised to develop branch
- Ensure the sonar checks are enabled to identify of critical code level bugs at integration cycle
- Development life cycle should cover the quality checks
- Containerize the application using Docker. – 5%
- Implement the maven job command to generate and push the docker image to repository , which ensures the docker tool is not needed
- Deploy the docker image once the MR is approved and ensure the base secure image is used
- Deploy the application into various cloud providers in provided Kubernetes namespace. – 5%
- Application should be portable and would be able to run any container like cross cloud products
- Implement the observability like sidecar approach to handle the observerability(log mechanism )
- Implement the zero trust mechanism to container applications using envoy proxy approach
- Develop software and systems using test driven development and continuous integration practices. – 5%
-
- Follow the TDD methodology development cycle , which test cases are provided first before the development
- Implement Cucumber scenarios for every API , which covers all BDD and TDD test scenarios of Specific functionality .
- Research related products and make necessary software recommendations. – 5%
-
- Identify and propose the best feasible solutions for Design , security ,traceability and observerbility
- Design the robust SRE (system reliability engineering) for application to make availability of 99% , which helps business to follow latest features that they can offer to customers.
- Innovate constantly to remain on the technical edge and Implement the BDD test cases for API’s and develop test cases for erroneous code. – 5%
-
- Upgrade the Microservices dependencies like spring boot ,quarks , Log4j2 to eliminate the recent CVC security flaws
- Reform the infrastructure architecture like Kubernetes with Helm routes for rolling policy for zero downtime.
- Adopt and make the development application in TDD approach and Implement the AI/ML for log analysis to detect anomalies in the application. – 5%
-
- Using the cucumber scenario outline to cover the technical and business test cases
- Provide more test data at cucumber level to identify the bugs which causes the data related error scenarios.
- Implement the Mock and power Mockito for downstream response or DB records.
- Collaborate and consult with key technical experts, senior technology team, and external industry groups to resolve complex technical issues and achieve goals. Lead projects, teams, or serve as a peer mentor. – 5%
-
- Continuously get the architecture review with expert’s committees and follow the security concerns if they raise any
- Arrange the meeting with all the teams when there is change at core module level or technology at data
- Make decisions in developing standard and companywide best practices for engineering and technology solutions requiring understanding of industry best practices and new technologies, influencing and leading technology team to meet deliverables and drive new initiatives. – 5%
-
- Work with System architects and identify the repeated problems and provide the feasibility solution best solution based on the features of modern technology
- Automate the CI/CD as much as and incorporate the automation at architectural level .
- Review and analyse complex, large-scale technology solutions for tactical and strategic business objectives, enterprise technological environment, and technical challenges that require in-depth evaluation of multiple factors, including intangibles or unprecedented technical factors. And Design, code, test, debug, and document for projects and programs. – 5%
-
- Identify and design the technology changes like moving from Minio to AWS S3 bucket , these technology changes should implement module by module and maintain consistency of application
- Modern architecture will keep on changing the design or technology change , should prioritize and update the technology on need basis as soon as possible to avoid the issues
- Act as a key participant in developing standards and companywide best practices for engineering complex and large-scale technology solutions for technology engineering disciplines. – 5%
-
- Conduct the chaos engineering as part of test life cycle , before the release to production to identify the security & performance of the application
- Make necessary changes to frameworks as per new requirements as technology should be able to meet all the business requirements
- Have a hands-on leadership approach in driving design sessions, architectural choices, code versioning, code reviews, build processes and deployments. – 5%
-
- Lead the design changes diligently , and provide necessary build release process which adherence to zero tolerance
- Maintain the the robust build process and promoting the libraries to move to next phase of applications like SIT to UAT and finally moving to production with out any manual intervention .
- Develop an exceptional user experiences on desktop, web and mobile devices and Ensure overall roadmap for the development team is understood and agreed with key stakeholders. – 5%
-
- Implement the redux for react JS application to maintain the application states and review the constantly of using the memory
- Host the require images to CDN and cache the frequently used JS files for delivering the high-speed content delivery
- Design and publish the swagger document which includes module wise API information
Qualifications
Position Qualifications:
- Minimum Bachelor’s degree in computer science or closely related field.
- Experience identifying technical solutions for business problems – identifying the benefits and risks of the solutions and providing recommendations
- Strong experience with latest technologies as mentioned above
We offer a competitive total rewards package including base salary determined based on the role, experience, skill set, and location. For those in eligible roles, discretionary incentive compensation which may be awarded in recognition of individual achievements and contributions. We also offer a range of benefits and programs to meet employee needs, based on eligibility. These benefits include comprehensive health care coverage, on-site health and wellness centers, a retirement savings plan, backup childcare, tuition reimbursement, mental health support, financial coaching and more. Additional details about total compensation and benefits will be provided during the hiring process.