ASIM KHALIL
SENIOR JAVA SOFTWARE ENGINEER SPRINGBOOT MICROSERVICES
Naperville, IL E: **********@*****.*** P: 331-***-**** LinkedIn: asimkhalil
Professional Summary
With 13+ Years of practical involvement in application development, my expertise lies in the creation and enhancement of high-efficiency, expansive software applications. My career has encompassed a spectrum of sectors, including OTT streaming, financial transaction handling, risk technology, compliance, healthcare, and continuity planning.
My skill set includes proficiency in Elasticsearch, MongoDB, RabbitMQ, Apache Kafka, Microservices architecture, Spring Boot, Spring Cloud, Java 8, Java 11, Docker, Kubernetes, AWS Lambda, as well as AWS SQS and SNS services.
My comprehensive experience in the Software Development Life Cycle (SDLC) encompasses activities such as analyzing requirements, creating technical specification documents, designing, coding, implementing applications, conducting unit and system testing, producing documentation, providing production support, and overseeing functional and regression testing.
In terms of technical skills, I am well-versed in Core Java across versions 8, 11, and 17. Additionally, I have proficiency in Java collections, data structures, transaction management, algorithm implementation, multi-threading, concurrency management, and asynchronous processing.
I possess practical knowledge in utilizing Spring Core Annotations to facilitate dependency injection, implementing Spring MVC for RESTful APIs, and employing Spring Boot for microservices architecture.
Furthermore, my development expertise encompasses a range of technologies including the Spring framework, Spring Batch, Spring Data, Hibernate, batch programming, Spring MVC, Spring Web Services (Spring WS), Spring Boot, as well as conducting JUnit testing.
I am proficient in the utilization of project build tools like Maven, Gradle, and Jenkins.
I have a comprehensive grasp of OAuth security protocols and hands-on familiarity with OAuth2 authentication mechanisms.
I am driven by a strong motivation to acquire proficiency in novel tools, techniques, and technologies. I consistently endeavor to elevate my skills and expand my knowledge base.
Areas of Expertise
Java 8, 11, 17
SpringBoot
Multi-Threading
REST API
Argo CD / Harness
Single Sign On (SSO)
JIRA
Git
Maven
Gradle
RabbitMQ
Java Script
Elastic Search
Splunk
JUnit
Mockito
MySQL
PostgresSQL
MongoDB / NoSQL
Confluence
Spring Security
Spring Cloud
DynamoDB
Redis
Async API
CI/CD (Jenkins Pipelines)
Distributed Logging
TeamCity
Apache Kafka
AWS Lambda/SQS/SNS
Kubernetes
Docker
Spring Batch
Agile
Azure Devops
JQuery
Professional Experience
Senior Java Software Engineer, LumiMinds Inc, Chicago, IL May 2023 – Present
I have been involved in the development of Spring Boot microservices for various projects. These microservices have been designed following the principles of Microservices Architecture. I have utilized a MySQL database for data storage and incorporated messaging systems such as Amazon MQ and RabbitMQ as queuing systems. Additionally, I have leveraged Spring Cloud to enhance the scalability and resilience of these microservices.
Responsible for designing and developing new microservices based on emerging requirements and extracting functionality from existing codebase.
Developed strategies for integrating internal security models into new projects, leveraging Spring Security and Spring Boot, and utilizing Java for building REST services.
Successfully implemented microservices to retrieve data from Elasticsearch using the REST Java API.
Developed new libraries following the microservices architecture, utilizing REST APIs and Spring Boot.
Created and configured continuous delivery pipelines using Jenkins CI server to facilitate the deployment of microservices.
Possess a strong understanding of Java concurrency, concurrency patterns, and extensive experience in building thread-safe code. Proficient in working with Docker for convenient environment setup during development and testing phases.
Integrated Kibana with Elasticsearch to perform in-depth analysis of indexed data and gain valuable insights through visual representations.
Implemented the business logic layer for MongoDB services, leveraging the document-oriented database to store data efficiently.
Familiar with web services and security protocols such as OAuth 2.0.
Experienced in working with development tools like STS-Eclipse, Git, Jenkins, Jira, and Artifactory.
Possess a solid understanding of OO design principles, service-oriented architecture (SOA), design patterns, and industry best practices.
Proficient in scripting and comfortable working in a Linux environment.
Proficient in deploying new services and managing dependencies using AWS (Amazon Web Services).
Utilized libraries such as Jackson or Gson to parse JSON data and map it to Java objects, ensuring smooth data processing.
Designed and implemented RESTful APIs that accepted and returned JSON payloads, adhering to industry best practices.
Designed and implemented robust Java applications using object-oriented design principles to ensure code maintainability and extensibility.
Designed and implemented Java applications that interacted with UNIX-specific APIs and system calls.
Senior. Java Software Engineer, PLAYCO Entertainment Pvt. Limited, Lahore, Pakistan Jan 2022 – May 2023
Client: STARZPLAY https://starzplay.com, Dubai, UAE
I have developed microservice APIs that facilitate the integration of payment processors such as Payfort and Adyen. These APIs are designed to be called from both mobile and web clients. Additionally, I have created a payment gateway that handles validation, performs necessary checks, logs inbound requests, and provides the necessary interface for seamless integration with third-party payment processors.
Responsible for coordinating the release process using Jenkins.
Developed and maintained responsive web applications using HTML, CSS, and JavaScript.
Responsible for the design and development of backend microservices using Java/Java EE. I utilize Java SpringBoot, MYSQL, and Mongo Database to build these microservices. Additionally, I employ RabbitMQ as a messaging system to support the development of microservices.
Configure multi-datasource environments for Spring Boot applications, ensuring efficient data management. In addition, I extensively utilize Spring Boot Scheduler and In-Memory databases for testing purposes.
I develop Spring Boot services using Redis Cache, enhancing the performance and scalability of the applications.
I have experience in developing Java services using Amazon Lambda and SQS. I also write flyway migration scripts to facilitate smooth database migrations.
I provide guidance and leadership to software developers within the team, ensuring effective collaboration and achieving project goals.
I am responsible for writing comprehensive unit and integration tests to ensure the quality and reliability of the software.
I oversee the end-to-end integration of Spring Boot microservices, ensuring seamless functionality across the system.
Implement multithreaded solutions in Java to optimize performance and achieve better responsiveness.
Create Jenkins pipelines to automate the deployment workflow, streamlining the release process.
I supervise and manage development tasks within the sprint, ensuring timely delivery of features and resolving any issues that arise.
Managed the deployment and maintenance of Java web applications on Apache Tomcat servers in a production environment.
I configure Spring Boot applications using build tools like Maven and Gradle, ensuring proper dependency management.
Designed and implemented efficient data processing pipelines for handling large datasets using Spring Batch.
Integrated front-end templates with back-end systems using AJAX and RESTful APIs.
I actively participate in database design activities, ensuring efficient data modeling and optimization.
I prioritize performance, security, stability, and overall quality of the application, ensuring it meets the desired standards.
Implemented client-side form validation and error handling using AngularJS's built-in validation directives.
Utilized AngularJS's two-way data binding to synchronize data between frontend views and backend services.
Java Developer, CINEPLAY Pvt. Limited, Lahore, Pakistan Jun 2018 – Jan 2022
Client: STARZPLAY https://starzplay.com, Dubai, UAE
Involved in the development of microservices for an OTT streaming billing system. Using a microservices architecture, I am responsible for creating various microservices dedicated to billing and payment functionalities. These microservices are interconnected using the RabbitMQ Queuing system to ensure smooth communication. Additionally, I am also responsible for migrating legacy applications to the new microservices architecture for improved performance and scalability.
Actively contribute throughout all phases of the development lifecycle, ensuring smooth progress and successful completion of projects. My expertise lies in writing well-designed, testable, and efficient code using Java and the SpringBoot framework. Additionally, I utilize RabbitMQ and MYSQL for effective message queuing and database operations.
I am experienced in creating flyway schema automation scripts to streamline database migrations and updates.
Ensuring the code's testability, scalability, and efficiency is one of my priorities.
I actively participate in requirement analysis and design phases of Java applications and databases, ensuring alignment with project goals and client expectations.
I effectively manage persistence using JPA entities and utilize Bean Validation and Java 8 Streams for enhanced data processing. Implementing Java design patterns, I develop robust and maintainable Java applications.
I write comprehensive Java unit and integration tests using Groovy and Mockito, ensuring the reliability and correctness of the codebase.
Implement front-end logic, data manipulation, and integration with APIs.
Professional Experience Continued
Software Developer, INTROTECH Solutions, Lahore, Pakistan Nov 2014 – Jun 2018
Client: Shadow-Planner https://daisyuk.tech, United Kingdom
Developing services using Hibernate and the Spring framework. Additionally, I have worked on the frontend using ActionScript and Adobe Flex to create a client interface for the shadow-planner application.
I have been involved in the development of Java backend services for the shadow-planner application
My responsibilities included designing and developing Java applications using Java Enterprise Beans, MySQL, JBoss, and Hibernate.
I actively participated in the migration process from JBoss to WildFly, ensuring a smooth transition.
Additionally, I played a role in deploying new features and products into the production environment, ensuring their successful implementation.
I actively contribute to application design, database design, and application performance tuning phases, ensuring optimal performance and efficiency.
I have experience in configuring XML files for Spring applications and JBoss servers, enabling smooth operations and seamless integration
Software Developer, Software Innovations, Lahore, Pakistan Jan 2009 – Nov 2014
Client: INTRALINKS https://www.intralinks.com, Boston, USA
I have hands-on experience working on the Intralinks Secure Excel Viewer, a product developed for a US-based client, Intralinks. In this role, I actively participated in the development of backend services using Spring and Hibernate. Additionally, I took charge of developing the frontend using Adobe Flex, JavaScript, and ActionScript.
Participated in the architecture, design, and implementation of various back-end features using Java, XMPP, and Enterprise Java Beans. Collaborating closely with clients, I worked together to define solution requirements, ensuring alignment with their needs and objectives.
I successfully integrated third-party tools and components into applications, enhancing functionality and expanding capabilities.
In addition, I actively contributed to database design, playing a key role in shaping the data structure and optimizing performance.
I also provided assistance to front-end developers, guiding and supporting them in integrating the backend services seamlessly into the overall application architecture.
Education
Bs. Information Technology, University of the Punjab, Lahore, Pakistan 2007