Rahul Chandna

Software Architect at Exaze
  • Claim this Profile
Contact Information
us****@****om
(386) 825-5501
Location
Gauteng, South Africa, ZA

Topline Score

Topline score feature will be out soon.

Bio

Generated by
Topline AI

You need to have a working account to view this content.
You need to have a working account to view this content.

Credentials

  • AZ-900: Microsoft Azure Fundamentals
    Microsoft
    May, 2021
    - Nov, 2024

Experience

    • South Africa
    • Information Technology & Services
    • 100 - 200 Employee
    • Software Architect
      • Mar 2023 - Present

    • India
    • IT Services and IT Consulting
    • 700 & Above Employee
    • Senior Technical Specialist
      • Jan 2022 - Apr 2023

    • Technical Specialist
      • Apr 2017 - Dec 2021

      AEOI, FATCA, CRS, Cure IndiciaTechnologies: core java, junit, JWT tokens, IntelliJ, maven, gitlab, jersey, swagger, H2Project:Creating API (GET, PUT, POST, DELETE) and frontend changes to capture client information as required by compliance act. Created rules engine to automatically calculate client AEOI status based on current profile.GDPR Data DisposalTechnologies: core java, junit, IntelliJ, maven, gitlab, jerseyProject:Integrating with HSM to generate a key which is then used to scramble client data, once the recovery period is over the key is then discarded for HSM making sure the client profile can never be reverted/recovered.SOAP ServicesTechnologies: java, spring boot, maven, docker, Kubernetes, helm chart, gitlab ci/cdProject:This was to convert all soap services to spring-boot:° Used package-info.java concept to keep the namespace same.° Used Filter to expose the wsdl using “?wsdl” as spring boot default is “.wsdl”° Used @Endpoint to declare the class as listener ° Used @PayloadRoot to configure the request namespace and localPart° Used @ResponsePayload to map method response class° Used @EnableWS, @Configuration and extended WSConfigureAdapter to setup service ° @Bean name and return the WSDL from wsdl file instead of generating it from spring° Used SoapEndpointInterceptor to update the namespace and prefix so that the response namespaces stay AS-IS ° Used maven-ear-plugin to package the fourteen war files into one ear Show less

    • Senior Software Engineer
      • Oct 2015 - Mar 2017

      Java and Jboss UpgradeTechnologies: JDK, WildFly, Jenkins, maven ant run plugin, antProject:° Server setup was done by using Jenkins to ssh to the vm and execute chef-solo scripts ° Wrote chef scripts to setup WildFly.° Used chef environment files to setup different Wildlfy configuration per environment° Wrote Ant scripts called by maven-ant-plugin to be run via Jenkins° Fine-tuned Standalone-full.xml, updated NIO threads, HTTP header and post size° Configured SSL certificate in truststore° Configured datasource ° Updated maven dependencies in pom.xml° Wrote chef scripts to setup JDK 11 on the VM’s° Configured .bash_profile to include JDK HOME and WildFly bin folderMove from VM to Local KubernetesTechnologies: java, undertow, maven, gitlab, docker, Kubernetes, helm chartProject:° Added Undertow dependency and then wrote code to scan for servlets and API’s ° Tuned Undertow using code ° Used maven dependency:tree to clean up conflicting dependencies ° Used maven shaded plugin to create jar ° Wrote .gitlab-ci.yaml steps to inject database configuration as System Environment Parameters ° Created Dockerfile ° Created HelmChart that use Rancher (which is Kubernetes Cluster management tool) configuration to deploy the application to KubernetesModernizing legacy application that uses Paracon frameworkTechnologies:H2, java, entity manager, hibernate, jpa, jdbc, servlet, httpsession, JWT, parallel gc, undertow, reflections, hikaricpProject:Refactoring and replacing: • transaction manager with JPA Entity Manager • optimised in-memory entity beans to reduce garbage collection time • JDBC generator with JPA Entities • session manager with javax HttpSessionFollowed test driven approach while refactoring, used in-memory H2 database to reduce test runtime and enable offline test runs. Show less

    • Senior Software Engineer
      • Jul 2014 - Oct 2015

      BAZEL IIITechnologies: core java, junit, swagger, kubernetes, maven, gitlab, docker, jerseyProject:Created middleware application that connected to BI database every morning to fetch client BASEL III classification and then it pushed the updates to the client relationship management system. The application exposed its own API over swagger as well which is used by support teams to manually trigger requests to fetch BASEL data from BI and push it to CRM.Anti-Money LaunderingTechnologies: core java, JMS, junit, jersey Project:Implemented rules to capture client data mandatory for connecting to AML services to get client risk rating. If the client is rated high then an alert is triggered which is then signed-off and sent to system via MQ, so implement MQ consumers to consume the message and update the client state.Know Your ClientTechnologies: java, junit, mavenProject:Implemented business rules for client document capture required for KYC process.As a client can be captured in the system as main account holder or related (spouse), both of these have different business rules as main account holder has banking products linked to its profile but related client can only have access to the products of main account holder, both of these result in different details to be captured. Show less

    • Software Engineer
      • Sep 2011 - Jun 2014

      Online Banking EnablementTechnologies: java, junit, mavenProject:Integration of customer relationship management system with Online Banking, which triggers automated updates to OLB to activate/freeze the client OLB access based on its KYC/FICA status calculation.Rest ServicesTechnologies: java, jersey, swagger, maven, H2, jwtProject:Client has a legacy monolith frontend system that caters for multiple geographies, so this project was to refactor the code and expose each front-end functionality as a rest service.All the API are authenticated via JWT token. Show less

    • Junior Software Engineer
      • Oct 2010 - Aug 2011

      Working with Business and Technical Leads • Understating AS-IS client environment by taking initiative of connecting with South Africa Business.• Setting up business walk through sessions, thereby learning and at same time building relationships with business leadership.• Volunteered to work on complex production issues with senior developers• Understanding business requirements and working with senior technical specialist's to create technical document and workflows• Documented production issues and business requirementsjava, ant, servlets, spring source tool, HTML, JavaScript, AJAX, jQuery, svn, maven, spring, xml, pair-programming, xsd, wsdl Show less

    • Trainee
      • Jul 2010 - Sep 2010

      Java and Servlets trainingSQL and PLSQL training

Education

  • Dev Bhoomi
    Bachelor of Technology (B.Tech.), Computer Science
    2006 - 2010

Community

You need to have a working account to view this content. Click here to join now