Post Job Free
Sign in

Software Engineer Senior

Location:
Vienna, VA
Salary:
143000
Posted:
October 28, 2025

Contact this candidate

Resume:

Pawan Shah

571-***-**** ******************@*****.*** LinkedIn

Senior Software Engineer

SUMMARY

Senior Software Engineer with over 5 years of experience in building enterprise applications using Java, Spring Boot, and Angular in Agile environments. Experience in designing RESTful APIs and microservices by using Kafka, Resilience4j, and distributed service patterns so that applications remain scalable and resilient. Skilled in deploying applications to AWS ECS, Lambda, S3, and RDS by using Docker and Kubernetes along with CI/CD pipelines built with GitHub Actions and Jenkins. Strong focus on application security through OAuth2, JWT, and RBAC so that access control remains consistent across systems. Hands-on experience with PostgreSQL, MongoDB, and DynamoDB in order to optimize performance for transactional and reporting use cases. Knowledge of Splunk, CloudWatch, and OpenTelemetry to instrument monitoring, tracing, and application health visibility. Active contributor in Agile teams by driving sprint planning, backlog refinement, and technical discussions so that business goals align with technical delivery.

Technical Skills

Languages & Frameworks:Java 17/21, Python, Java 11, Java 8, Spring Boot, Spring MVC, JSP, Struts,, TypeScript, JavaScript, jQuery, HTML, CSS

Frontend Technologies: Angular 18, Angular 14, Angular 10, Angular Interceptors, Lazy Loading, Reactive Forms, Material UI, DOM Manipulation, AJAX, CSS Grid, Bootstrap, SPA Development

Backend & API: RESTful APIs, SOAP, DTO Mapping, Spring Beans, Spring Profiles, Spring Actuator, Spring Security, JWT, OAuth2, RBAC, AOP

Databases: PostgreSQL, MySQL, Oracle, MongoDB, DynamoDB, RDS, JDBC, JPA, Hibernate, XML, XSD, JSON

Messaging Systems: Kafka, Topic Monitoring, Offset Handling, Retry Logic, Event-Based Triggers, Background Jobs

Cloud & DevOps: AWS ECS, Lambda, EC2, S3, Parameter Store, Secrets Manager, Load Balancing, CloudFormation, Kubernetes, GitHub Actions, Jenkins, CI/CD Pipelines

Testing & Quality: JUnit, Mockito, TestContainers, JMeter, Cucumber, SonarQube, Integration Testing, Load Testing

Monitoring & Logging: Splunk, CloudWatch, OpenTelemetry, Log4J, Log Aggregation Pipelines, Alerting Tools

Build & Deployment: Docker, WAR Deployment, Maven, Jenkins, GitHub, Git, Tomcat, Artifact Versioning, Hotfix Handling

Agile & Project Management: Agile Methodologies, Jira, Sprint Planning, Backlog Grooming, QA Handoff, Confluence Documentation

Operating Systems & Tools: Linux, Bash Scripting, Cron Jobs, Server Log Tailing, Environment Configurations, Slack Integration

EDUCATION

Masters of Science in Information Studies

Trine University

EXPERIENCE

Farm Bureau, Idaho

Software Engineer Apr 2024 - Present

Contributed to a project Policy Activity Dashboard Revamp which was developed so that policy updates, billing changes, and transaction records could be managed in one centralized system. Worked on Spring Boot services so that transaction workflows such as billing adjustments and policy status updates were processed efficiently. Contributed to event handling with Kafka listeners by which user activities were captured and stored in PostgreSQL for reporting and historical tracking. This allowed staff and agents to use a unified Angular dashboard that reduced manual checks and improved monitoring of policy activities.

Responsibilities:

●Developed multiple Java 17/21 based RESTful APIs for transaction processing by using Spring Boot with Spring Profiles and Spring Beans to maintain clean configuration segregation per environment.

●Built API observability with Spring Actuator endpoints, exposing health checks, custom metrics, and exposing internal thread usage for ECS deployments.

●Created Angular 16 modules with lazy loading and interceptors to optimize route-level performance and enable centralized error and token handling through custom TypeScript services.

●Integrated Kafka topic-based communication across microservices by implementing Avro schema validation, topic versioning strategy, and retry handling for asynchronous data syncing.

●Designed distributed microservices using circuit breaker and fallback logic through Resilience4j for internal service resiliency and API Gateway pattern for external client routing.

●Implemented HTTP interceptors in Angular application for token injection, global error handling, and loader visibility toggled via a shared service using TypeScript.

●Created Cucumber feature files using Gherkin to automate API behavior tests in collaboration with QA, covering positive and negative scenarios for REST endpoints.

●Implemented authentication using OAuth2 with JWT-based access tokens, Spring Security filters for token verification, and RBAC for resource-level access control.

●Configured Spring Boot applications to use AWS Parameter Store and Secrets Manager for secure environment variable access and credential isolation during deployment to ECS Fargate.

●Deployed services in ECS using containerized Docker images with CI/CD pipelines integrated into CodePipeline and GitHub for automated deployment, rollback, and artifact tagging.

●Utilized RxJS Subjects and BehaviorSubjects for real-time updates between Angular components, especially for form auto-save and live table filtering.

●Built Angular components stored in Storybook for centralized documentation and shared them across teams to align on design system consistency.

●Used Amazon RDS with PostgreSQL to store transactions and relational data, designed indexes to optimize frequent queries from reporting modules.

●Integrated AI-driven summarization and classification APIs into microservices for content tagging by connecting to internal GenAI services using secure REST endpoints and validated request payloads.

●Used Kafka consumer groups to distribute workloads between microservices and enabled offset handling with topic monitoring integrated into internal dashboards for communication reliability.

●Adopted AWS Comprehend for internal text classification features and built an python based AWS Lambda trigger pipeline to process documents asynchronously and store results in MongoDB.

●Wrote JUnit and Mockito test cases with coverage for service, controller, and repository layers, and performed integration testing with TestContainers.

●Designed background Lambda functions using python triggered by S3 object creation events to asynchronously validate and persist data using Java with DynamoDB and AWS SDK.

●Managed supporting services like internal caching and Kafka sidecar containers using Kubernetes pods and ConfigMaps for centralized configuration handling in non-ECS environments.

●Used AWS SNS to trigger downstream Lambdas asynchronously from S3 events for decoupled file processing pipelines with retry logic.

●Used SonarQube for static code analysis and quality gate enforcement in pull request workflows with rules tailored to Java 17 and TypeScript.

●Collaborated daily with cross-functional Agile teams, attending sprint reviews and discussing integration stories with backend and frontend leads for syncing implementation.

●Used Splunk with OpenTelemetry exporters for application trace logs, monitored latency patterns, and instrumented distributed tracing for inter-service communication paths.

●Managed deployment health by monitoring AWS CloudWatch alarms, checking ECS container memory usage, and implementing graceful restarts via EC2 Auto Scaling policies.

●Worked on Linux-based EC2 servers to analyze application-level logs, tail files during high-traffic hours, and resolve production issues with minimal turnaround time.

Technological Environment:

Java 17/21, Spring Boot, Python, Spring Profiles, Spring Beans, Spring Actuator, Angular 16, TypeScript, RESTful APIs, Kafka, Avro Schema, JPA, Cucumber, PostgreSQL, MongoDB, DynamoDB, AWS ECS, S3, Lambda, EC2, SNS, Parameter Store, Secrets Manager, CI/CD pipelines, Docker, OAuth2, JWT, RBAC, Microservices, Circuit Breaker, Gen AI, API Gateway, OpenTelemetry, Splunk, JUnit, Mockito, SonarQube, Agile, GitHub, Linux, CloudWatch

Carta, San Francisco, CA

Full Stack Java Developer Jan 2022 - Mar 2024

Contributed to a project Equity Management Dashboard which was developed so that clients could track and manage equity holdings in a centralized platform. Worked on Spring Boot services so that equity data processing and portfolio updates were handled consistently across the system. Contributed to frontend development with Angular 15 by which users were provided with interactive charts and filtering options for analyzing equity positions. This gave clients a responsive dashboard that supported decision-making with clear and actionable insights.

Responsibilities:

●Developed modular Java 11 services using Spring Boot with proper DTO mapping, service separation, and request validation to simplify service orchestration across microservices.

●Built RESTful APIs with Spring Boot, routing traffic through API Gateway by applying header-based routing rules and secure external API access configurations.

●Migrated frontend codebase from AngularJS to Angular 14 with modular structure and lazy loading enabled for large dashboard sections using dynamic route definitions.

●Implemented Angular interceptors in TypeScript to append JWT tokens for each request and enabled retry strategies for failed calls across shared service modules.

●Implemented NgRx Effects to handle background API calls triggered by store changes and optimized loading states using typed selectors and debounced actions.

●Configured Kafka producers and consumers in Java to handle retry logic and offset tracking, and implemented dedicated topics for inter-service audit events.

●Created background worker services using Kafka event-based triggers for report generation pipelines and stored event payloads with structured NoSQL schema.

●Deployed containerized Java microservices to Kubernetes clusters using Helm charts and configured liveness probes, resource quotas, and namespace isolation for different environments.

●Used DynamoDB to store time-based activity logs with TTL settings for auto-cleanup and created compound keys for optimized access.

●Containerized all services using Docker and implemented Jenkins pipelines for CI/CD, managing environment-specific builds and property injection through pipeline parameters.

●Documented RESTful APIs using Swagger annotations and generated OpenAPI specs for internal and external teams and enabled Postman collection imports and test simulation.

●Conducted performance testing using JMeter to evaluate service response times under simulated multi-threaded load for key e-commerce workflows.

●Migrated monolithic codebase to microservices by extracting legacy modules into independent REST services using Java and deploying them on AWS ECS using service discovery.

●Deployed services using AWS EC2 and ECS with load balancer integration, and used CloudWatch logs for tracking startup times, exceptions, and deployment success messages.

●Created unit and integration test suites using JUnit and Mockito for key flows in authentication, user management, and order lifecycle modules.

●Integrated centralized logging pipeline with Splunk to collect application logs, filter exceptions, and trigger alerts for abnormal behavior through Slack integration.

●Maintained documentation in Confluence for service contracts, architecture diagrams, and endpoint usage, and tracked development progress using JIRA stories and subtasks.

Environment: Java 11, Spring Boot, DTO Mapping, Request Validation, RESTful APIs, API Gateway, Angular 14, TypeScript, RxJS, Lazy Loading, Kubernetes, Helm, DynamoDB, Kafka, Offset Handling, Docker, Jenkins, CI/CD Pipelines, JUnit, Mockito, JMeter,AWS - EC2, ECS, CloudWatch, Splunk, GitHub, Agile, Microservices, Service Orchestration, Confluence, JIRA

Client: FirstBank, Lakewood, CO Mar 2020 – Dec 2021

Java Developer

Contributed to a project Digital Banking Platform which was developed so that customers could manage profiles and access online banking features in one system. Worked on profile services so that customizable user profiles and authentication flows were supported across the platform. Contributed to backend development for transactional functionality by which users completed payments and transfers with improved reliability.

Responsibilities:

●Developed enterprise-grade modules using Java 8 and Spring MVC, following the traditional controller-service-repository structure with JSP pages for dynamic HTML rendering.

●Built reusable frontend components using Angular 10 and implemented reactive forms with real-time validation and field-level error messages for input.

●Developed reusable pipes and directives for formatting dates, numbers, and statuses across Angular pages.

●Designed backend RESTful APIs for data retrieval and status updates, using Spring configuration XML for bean lifecycle control.

●Worked with MySQL for storing UI configuration data used in JSP-based modules and performed DML operations during daily maintenance tasks.

●Used Oracle for transaction-heavy legacy modules and wrote PL/SQL scripts for data correction and monthly job processing.

●Designed XML parsers using JAXB and SAX for transforming external vendor feeds into internal structures, and validated using XSD schemas.

●Consumed SOAP web services using WSDL contracts with schema validation, and mapped responses into DTOs for use within internal systems.

●Applied JUnit for unit testing and Maven for build automation.

●Developed AJAX-powered dynamic sections using custom JavaScript and jQuery on JSP pages to avoid full page reloads and enhance legacy UI responsiveness.

●Created form-based login authentication logic using session tokens and cookie storage for internal access management within JSP/Servlet-based modules.

●Built testing logic with JUnit and Mockito to validate controller paths, business logic, and service dependencies across MVC layers.

●Deployed WAR packages on Apache Tomcat through Jenkins pipelines and managed manual configuration updates across UAT and production environments.

●Utilized Log4J for legacy log management with XML-based log configuration and monitored logs through file tailing and log rotation on Linux servers.

●Worked on Struts actions and JSTL-based JSP views to maintain legacy workflow modules during migration to newer stacks.

●Built cron-based job scheduling on Linux to clean up legacy Oracle data snapshots and generate XML reports for monthly audit logs.

●Documented existing SOAP APIs, database schema relationships, and frontend integration logic for ongoing maintenance and onboarding new developers.

●Handled production issues by checking Linux server logs, performing rollbacks, restarting Tomcat servers, and applying hotfixes directly to UAT.

Environment: Java 8, Spring MVC, JSP, JSTL, Struts, SOAP, WSDL, XML Parsing, JAXB, SAX, Angular 10, Reactive Forms, JavaScript, jQuery, MySQL, Oracle, Cron Jobs, Maven, RESTful APIs, JUnit, Mockito, Log4J, Tomcat, WAR Deployment, Linux, Agile, AJAX, Session Management



Contact this candidate