profile-pic
Vetted Talent

Sunil Mallesara

Vetted Talent
15 years of expertise in software architecture, design, and development. Currently serving as a technical lead, emphasizing solution design and providing comprehensive architecture and component design guidance to steer the engineering team. Strong leadership abilities with experience in managing teams. Skilled in Java, J2EE, Spring Boot, AWS, GCP, Akka Reactive programming, JMS, Kafka, AMQP, Microservices, Hibernate, Oracle, SQL, and Web Technologies. Certified Java Programmer, AWS Solution Architect training in progress. Proficient in Agile methodologies, Scrum ceremonies and Test Driven Development. Excellent interpersonal skills, a collaborative team player, and a goal-oriented individual. Demonstrated ability to adapt quickly and learn new technologies. Global professional with extensive experience in India and Australia, excelling in effective communication and collaboration across international teams.
  • Role

    Sr Consultant/Manager & Akka Developer

  • Years of Experience

    16.5 years

Skillsets

  • Jira
  • Maven
  • Lombok
  • Log4j
  • Linux
  • JUnit
  • JSP
  • JSON
  • JProfiler
  • Microservices
  • Jetty
  • Jenkins
  • JDBC
  • JBoss
  • JavaScript
  • IntelliJ
  • HTTP
  • Sonar
  • WinSCP
  • visio
  • Tortoise SVN
  • Tomcat
  • Team City
  • Swagger
  • SQL Server
  • Spring
  • HTML
  • Shell Script
  • Servlets
  • REST
  • Reactive
  • Putty
  • Pl/sql
  • Mockito
  • SQL - 10 Years
  • Oracle
  • JMS
  • J2EE
  • Hibernate
  • AWS
  • AMQP
  • XML - 8 Years
  • SQL - 10 Years
  • Spring Boot
  • Kafka - 2 Years
  • Kafka - 2 Years
  • AWS - 2 Years
  • AWS - 2 Years
  • GCP - 2 Years
  • GCP - 2 Years
  • Java - 15 Years
  • Bugzilla
  • H2
  • Git
  • Filezilla
  • Eclipse
  • DB2
  • CVS
  • CSS
  • Confluence
  • Java - 15 Years
  • Bamboo
  • AutoSys
  • Aquadata studio
  • Ant
  • Angular Js
  • Akka
  • Active MQ

Vetted For

13Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Principal EngineerAI Screening
  • 42%
    icon-arrow-down
  • Skills assessed :ECS, Effective Collaboration, EKS, Go, Google Compute Platform (GCP), Team management, API Design, Scala, AWS, CI and CD, Java, Kubernetes, Leadership
  • Score: 42/100

Professional Summary

16.5Years
  • Apr, 2024 - Present1 yr 8 months

    Senior Consultant/Senior Manager

    Visa
  • Jun, 2018 - Apr, 20245 yr 10 months

    Solution Designer/Architect

    ASX
  • Apr, 2017 - Jun, 20181 yr 2 months

    Independent Contributor Java Developer

    White Clarke Group
  • Nov, 2008 - Jan, 20112 yr 2 months

    Software Engineer

    Huawei Technologies
  • Feb, 2011 - Dec, 20143 yr 10 months

    Senior Software Engineer

    OnMobile Global
  • Jan, 2015 - Feb, 20172 yr 1 month

    Associate - Java Developer

    Goldman Sachs

Applications & Tools Known

  • icon-tool

    Oracle

  • icon-tool

    SQL Server

  • icon-tool

    JBoss

  • icon-tool

    Tomcat

  • icon-tool

    Eclipse

  • icon-tool

    IntelliJ

  • icon-tool

    Visio

  • icon-tool

    Tortoise SVN

  • icon-tool

    CVS

  • icon-tool

    Bamboo

  • icon-tool

    Jenkins

  • icon-tool

    Maven

  • icon-tool

    ANT

  • icon-tool

    Confluence

  • icon-tool

    Bugzilla

  • icon-tool

    Linux

  • icon-tool

    WinSCP

  • icon-tool

    FileZilla

  • icon-tool

    Putty

  • icon-tool

    Shell scripting

  • icon-tool

    ActiveMQ

  • icon-tool

    Sonar

  • icon-tool

    Linux

  • icon-tool

    Putty

  • icon-tool

    Kubernetes

  • icon-tool

    Salesforce

  • icon-tool

    SonarQube

  • icon-tool

    Bamboo

  • icon-tool

    Maven

  • icon-tool

    Docker

  • icon-tool

    Swagger

  • icon-tool

    Lombok

Work History

16.5Years

Senior Consultant/Senior Manager

Visa
Apr, 2024 - Present1 yr 8 months
    Leading the Engineering team by mentoring engineers to follow best practices in software design and development. Extensive use of AI for design, coding, testing with manual verification at every stage. Applied AI-assisted design, coding, and testing methodologies while conducting thorough manual reviews to validate results and ensure adoption of the most effective solutions. Requirement gathering, gap analysis, design, development and delivery of software products. Prioritize deliverables based on dependencies and available resources. Creating design documents and illustrating solution architecture, use-cases, and sequence flows. Actively participating in coding, code reviews, and optimizing processes for improved performance and efficiency. Analyze integration patterns for upstream and downstream systems. Define data transformation and data retention policies. Establish migration strategies from legacy systems to the new system. Present the solution and design to the Organization level Architect Forum for review. Collaborate with PM, BA, Engineering, Infrastructure, and Testing teams. Assist the test team with test strategy and test data management. Participated in AI hackathons and contributed to developing innovative MCP solutions.

Solution Designer/Architect

ASX
Jun, 2018 - Apr, 20245 yr 10 months
    Prepared high-level designs, flowcharts, and technology decisions for modules. Developed high-level designs, flowcharts, and technology selection strategies to ensure optimal architectural decisions. Delivered scalable, secure, and high-performance cloud-native Java microservices on GCP, seamlessly integrated with Salesforce and Avoka Forms. Implemented event-driven architecture and optimized data models to enable efficient communication across distributed systems. Established and maintained CI/CD pipelines, automated quality gates with SonarQube, and managed Kubernetes deployments for reliable cloud operations. Performed performance tuning, test automation, and code quality enhancements using JUnit, Mockito, and profiling tools to ensure system robustness.

Independent Contributor Java Developer

White Clarke Group
Apr, 2017 - Jun, 20181 yr 2 months
    Analyzed requirements and designed and developed software modules. Analyzed Java performance using JProfiler. Performed code reviews, merged code, and conducted integration testing.

Associate - Java Developer

Goldman Sachs
Jan, 2015 - Feb, 20172 yr 1 month
    Prepared high-level designs, flowcharts, and technology decisions for modules. Analyzed the impact on existing product features, if applicable. Designed database tables using DB2 SQL and analyzed query performance. Implemented modules using Java, Microservices, Spring, and Hibernate. Performed code reviews, bug fixing, and regression testing.

Senior Software Engineer

OnMobile Global
Feb, 2011 - Dec, 20143 yr 10 months
    Designed Core java APIs and modules. Defined flow for applications. Implemented java based audio finger print generator for SongMapper product. Wrote SQL and Oracle scripts, procedures and triggers. Performed code reviews, wrote unit tests and release notes.

Software Engineer

Huawei Technologies
Nov, 2008 - Jan, 20112 yr 2 months
    Low-level design and implementing APIs using Core Java. Writing stubs for testing.

Major Projects

6Projects

RLM Returns Lodgment Monitoring System

    RLM is an online application that allows ASX Participants to electronically complete and submit their financial returns as required under the Australian Operating Rules. This application deals with complicated forms and workflows with various systems involved in exchange of information.

DLT CHESS Replacement Project

    ASX's CHESS Replacement project aims to replace the existing clearing system with a Blockchain-based Trade Clearing System built on Java and DAML. The CHESS platform is responsible for clearing and settling each and every trade in the Australian Stock market.

Loan Contract Management Platform

    White Clarke Group is a leading software provider of an end-to-end asset finance management platform for retail, fleet, and wholesale. The platform enables automotive and asset finance organizations worldwide to manage their customer loans.

Syndicated Loan and Trading Platform

    This platform enables various banking operations related to syndicated loan processing and loan trading. It supports end-to-end loan processing, from managing credit agreement data to reporting required statistics.

Atlantis - CMS [Content Management System]

    Atlantis is the next-generation mobile content and metadata management system from OnMobile. It is used for maintaining various types of mobile content such as RBT, songs, videos, wallpapers, etc. The system provides a highly sophisticated UI for uploading, categorizing, and distributing content.

CTI Computer Telephony Integration Platform

    JIVR is a product from Huawei that enables IVR functionalities through Java APIs. Huawei JTAPI is a Java solution for implementing telephonic functionalities.

Education

  • Bachelor of Engineering in Information and Computer Science

    VTU, Karnataka

Certifications

  • Certified java programmer

AI-interview Questions & Answers

Hi. Yeah. Uh, this is Sunil Ghor. Uh, I'm a principal engineer in Australian Stock Exchange working remotely in Bangalore. I have around 15 years of experience, Uh, entirely in Java domain. I've been working as Java developer right from the beginning of my career. Right now, I'm working as a principal engineer with, My day to day activities involving system design and requirement analysis and coding and code reviews and, Uh, response responsible for team management. Uh, typical day, uh, starts with the SCUM meeting wherein which we discuss about The day to day progress blog posts and, um, how, uh, actively we can engage with each other and decide on what should be Prioritized and work on the same. This is my, uh, current profile, uh, at a very brief Yeah.

Okay. Uh, to design a scalable and, uh, secure, uh, API endpoint, uh, we need to start with, identifying what kind of, uh, data that it is processing. And, uh, depending on, uh, the level of A processing that it needs, we can identify, uh, the microservices that it needs to, uh, have. So if it can be, uh, distributed among different microservices, we can scale up using our cloud infrastructure these days. That would be one of the approach that, uh, I would prefer for addressing the scalability of, uh, of any application. And, uh, when coming to the secure API endpoint, uh, we can explore using token certifications in those lines Or to make the API available only for the authorized users or the applications.

Okay. If we are converting 1 with Java application into a microservice architecture on Kubernetes, very first thing is to understand, uh, what this application Java application is doing on that application, we have to understand how many different kind of operations that it is doing depending on which we can actually segregate interdepend independent set of operations and group them into 1 microservice And then, uh, I'll make them deployable on, um, our airport, uh, on Kubernetes. So, uh, this is how, uh, how we can start, uh, changing the design of our application. So this would be the very first step. And and then coming on to the, uh, uh, Kubernetes architecture, uh, we can always think about, uh, uh, deploying on port and, uh, having the customer are to manage, uh, this port and, uh, uh, the backup strategy and failure strategy, I think, can be defined on the Kubernetes. So this would be, uh, my approach to, uh, start thinking on, uh, converting a monolith, uh, Java application into a Microsoft architecture on Kubernetes.

Okay. Um, if we have to design a scalable real time data pipeline, AWS, How we can, uh, use existing capabilities of AWS are to address our issues For minimal latency and data loss, uh, we had to go with the best practices on AWS and the available features, uh, to define, uh, our strategy. Uh, I'm not able to give, uh, the exact solution at this stage, but, uh, I would start with, uh, read reading through the edit, uh, AWS capabilities on this front, uh, to address, uh, data

Okay. If we are migrating, uh, refactoring the last code base, uh, code base from Java to Scala, I would start from scratch. Uh, take one thing at a time and identify the services which can be taken, uh, in, uh, independent of the remaining part of the codebase. So convert, um, our refactor, uh, once at a certain time, uh, and, uh, upgrade each of these So, uh, stage by stage, make sure they're dependent on, uh, areas are upgraded together Uh, so that, uh, there won't be any much, uh, downtime, uh, in terms of upgrading these services uh

Yep. Again, uh, coming to the AWS. I have, uh, limited working experience with AWS. Uh, now I have a very good experience with GCP. So, uh, to answer questions for AWS, I would definitely start looking at the similar options uh, that we have and then identify, uh, the corresponding solution on the AWS. There is always, uh, a lot a lot in which I'll, uh

To ensure high availability and disaster recovery for a distributed application on AWS, we have many features which Make sure, um, uh, the higher availability. We have the availability zones, uh, which will address, uh, high level availability. If some, Some of the zones are down for some technical issues or any any issues for that micro. Uh, the surface on the other availability zone would Back it up and then make sure, uh, there is no performance impact or, um, downtime. And in case of disaster recovery as Well, uh, if there is some region, uh, has some, uh, uh, major disasters, it could be as measured as, uh, earthquakes. So, uh, now the the remaining, uh, available day zones will, uh, pick it up, uh, pick the request up and then scale up to, Uh, address the uh

We are assigning null, uh, interpretive data type Paint. Uh, I think we can go with, uh, the default value of 0 instead of, uh, assigning it now.

To To monitor and auto scale Java application within the Kubernetes ecosystem, I would use the cluster management to manage uh

To optimize JV's JVM performance for a Java application in a containerized environment. Um, I would, uh, look for the memory consumption, uh, from the application, uh, uh, during the application runtime. So if it's using a a heavy Number of objects at the same time, I would, uh, look at optimizing, uh, the load By, uh, uh, looking at the parallel executions, uh, if there is no other way, we'll have to increase the memory. Otherwise, We can always refactor the code to make sure, um, what can be executed, what can be sequentialized uh

AWS provides, uh, CloudWatch to, uh, track the application health. We can actually integrate into The AWS services to make sure there are relevant alerts and backup, uh, steps that we can take, uh, in case of any application, uh, going down. So AWS provides robust Features, uh, which can be leveraged, uh, to manage, uh, our applications and and their

I'm uh