About
Activity
- Yogendra Gadilkar joins UBS as Director, bringing extensive experience built across leading organizations such as Citi, Deutsche Bank, ORACLE…
Yogendra Gadilkar joins UBS as Director, bringing extensive experience built across leading organizations such as Citi, Deutsche Bank, ORACLE…
Liked byJinisha Vora
- Don’t wait for a scandal to force change. Double-pledging is real — and it’s costing lenders millions. If your system can’t verify asset authenticity…
Don’t wait for a scandal to force change. Double-pledging is real — and it’s costing lenders millions. If your system can’t verify asset authenticity…
Liked byJinisha Vora
- ✨ One more milestone unlocked! I had the privilege of presenting a session on Server-Side Rendering (SSR) at the Frontend Enthusiasts forum at NiCE…
✨ One more milestone unlocked! I had the privilege of presenting a session on Server-Side Rendering (SSR) at the Frontend Enthusiasts forum at NiCE…
Liked byJinisha Vora
Experience & Education
TransUnion
View Jinisha’s full experience
See their title, tenure and more.
or
By clicking Continue to join or sign in, you agree to LinkedIn’sUser Agreement,Privacy Policy, andCookie Policy.
Licenses & Certifications
ITIL V3
EXIN your ICT competence partner
Red Hat Certified System Administrator (RHCSA)
Red Hat
Sun Certified System Administrator for the Solaris Operating System
Sun Microsystems
Volunteer Experience
Projects
Sight Words Aloud
-
See projectRead and hear The Dolch Word List, Fry's Instant Words and Fountas and Pinnell's High Frequency Words.
Create a list of your own and click on the words to hear them aloud which helps with pronunciation.
Honors & Awards
Core Value Spotlight - Do the Right Thing & Think Client First
eOriginal
Core Value Spotlight - Own It
eOriginal
We Applaud!
Oracle Financial Services Software Ltd.
We applaud Jinisha Tanna for her systematic approach to work, efficient handling of multiple assignments and R&D activities for the FCPB Team.
More activity by Jinisha
- Ten years ago, TransUnion took a bold step forward by going public on the NYSE. Yesterday, I had the privilege of celebrating that milestone by…
Ten years ago, TransUnion took a bold step forward by going public on the NYSE. Yesterday, I had the privilege of celebrating that milestone by…
Liked byJinisha Vora
- Attending 29th Annual ISACA Mumbai Chapter Conference.
Attending 29th Annual ISACA Mumbai Chapter Conference.
Liked byJinisha Vora
- ISACA Annual conference Mumbai chapter #isaca ISACA Mumbai Chapter Day 2
ISACA Annual conference Mumbai chapter #isaca ISACA Mumbai Chapter Day 2
Liked byJinisha Vora
- ChatGPT vs. teachers: Who wins the battle for students’ attention?In today's tech-driven world, the educational landscape is rapidly evolving. One…
ChatGPT vs. teachers: Who wins the battle for students’ attention?In today's tech-driven world, the educational landscape is rapidly evolving. One…
Liked byJinisha Vora
- 🎉 Celebrating 12 years on LinkedIn! 🎉Happy to share my professional journey during the past one year:🥳 I joined Southern Glazer's Wine &…
🎉 Celebrating 12 years on LinkedIn! 🎉Happy to share my professional journey during the past one year:🥳 I joined Southern Glazer's Wine &…
Liked byJinisha Vora
View Jinisha’s full profile
- See who you know in common
- Get introduced
- Contact Jinisha directly
Other similar profiles
Explore more posts
Mayank A.
Confidential • 157K followers
Preparing for a system design interview? Think Tradeoffs, Not Just Tech[1.] CAP TheoremConsistency vs. Availability vs. Partition ToleranceChoose 2 - Consistent data, high availability or tolerance to network failures.(It's actually a choice between C & A)[2.] Latency vs. ThroughputFast response times vs. high data processing volume[3.] ACID vs. BASEStrict transaction guarantees vs. flexible consistency models[4.] Monolithic vs. MicroservicesSingle, unified application vs. distributed, independent services[5.] SQL vs. NoSQLStructured data and complex queries vs. flexible schemas and scalability[6.] Push vs. PullData delivery initiated by server vs. requested by client[7.] Caching StrategiesTradeoffs between different cache eviction policies (LRU, LFU, etc.)Balancing faster data access with potential staleness and increased complexity.[8.] Statefulness vs. StatelessnessMaintaining session state vs. stateless interactions for scalability[9.] Optimistic vs. Pessimistic LockingOptimistic locking assumes no conflicts, favoring speed and concurrency. Pessimistic locking prevents conflicts by acquiring locks upfront, sacrificing performance for data integrity.[10.] Data Locality vs. Data DistributionKeeping data close for faster access vs. distributing for resilience and parallel processing[11.] Security vs. PerformanceImplementing robust security measures like encryption and authentication can introduce overhead and impact system performance. Finding the right balance is crucial.[12.] Scalability vs. ResilienceBalancing the need to scale with the ability to quickly recover from failures is a critical design challenge.[13.] Centralization vs. DecentralizationChoose centralization for control and efficiency, decentralization for resilience and adaptability.[14.] Data Duplication vs. Data NormalizationDuplicate data for faster reads vs. normalize data for storage efficiency and data integrity.[15.] Resilience vs. CostInvesting in robust fault tolerance mechanisms and redundancy increases reliability but also increases system costs.[16.] Batch Processing vs. Real-Time ProcessingChoose batch processing for efficient handling of large datasets and real-time processing when immediate results are essential, even at a higher resource cost.[17.] Long Polling vs WebSocketsChoose long polling for simplicity and compatibility, or WebSockets for efficient, bi-directional real-time communication.[18.] REST vs. GraphQLStandardized simplicity with multiple endpoints vs. flexible, efficient queries with a single endpoint (GraphQL).[19.] TCP vs. UDPChoose TCP for reliability and order, UDP for speed.[20.] Caching vs. Real-Time DataPrioritizing faster access to potentially stale data in a cache versus ensuring the freshest data is retrieved directly from the source.--Free Newsletter - https://lnkd.in/dwbUpzWA#softwaredevelopment
26 CommentsKamran Ali
Atlassian • 31K followers
Disney+ Hotstar Architecture to serve 59 Million Concurrent streams.Functional Requirement: The video must play!High Level Design- Client apps (Mobile, Web, Connected TV) make calls to the external API Gateway (CDNs) which runs security checks and executes routing rules to forward the request to internal API gateway- Internal API gateway is fronted by a fleet of Application Load Balancers which forwards the request to the relevant backend service, which processes it and sends back the response- Backend services use a bunch of managed and self-hosted database solutionScaling External API Gateway (CDNs)- It is a cluster of edge and mid-gress nodes optimized for cache-hit scenarios- Based on past couple of months data, they created a new CDN domain for the cacheable paths (like scorecard, concurrency, key moments, etc). They optimized routing and security configurations to save compute resources- They adjusted the refresh rates for features like scorecards, Watch-more, live feeds, and key moments, to reduce the strain on peak network bandwidthScaling NAT Gatwways- They provisioned NAT Gateways at the subnet level instead of the AZ level to handle significant amount of external traffic- They migrated some services to other clusters to rebalance the workloadsScaling k8s worker nodes- They deployed high-throughput nodes (minimum 10 Gbps) and applied topology spread constraints to the API Gateway, ensuring each node hosted only a single pod to scale for services consuming substantial bandwidth (around 8 to 9 Gbps)- This strategy kept throughput per node at 2–3 Gbps, even during peak load.Scaling K8s- They migrated to Amazon EKS where AWS handles the control plane, allowing them to focus solely on managing the data plane. - They optimized scaling configurations to minimize API server throttling during pre-scale-up. For e.g. setting a step size that limited provisioning to 100–300 nodes per step.Scaling Services- Vertical Scaling -> They identify all the services that required more than 1000 pods at higher concurrencies and did vertical scale up to cap the number of pods below 1000🤔 over to you, which scaling strategy you've found most interesting?Let me know in the comments! 👇---You've got System Design skills but showcasing them in 60 minutes interview is a completely different challenge for e.g. where to start? How much time to spend on HLD vs LLD etcLet me share a FREE 7-day email course that provides a step-by-step framework for acing your 60-minute System Design interview📣 Join 1700+ subscribers and sign up for the course to learn time allocation to demonstrate full range of design skills (link in comments 👇)
19 CommentsMutha Nagavamsi
Workhall • 53K followers
3 production k8s lessons from scale 🤠1. Use Karpenter.It is great at handling nodes for scale.2. Optimize CoreDNS.Default settings are a bottleneck at scale.3. During rollouts avoid 5xx by setting right terminationGracePeriodSeconds & preStop hooks.BOTTOM LINE:Optimize for reliability, not cost. In the end, nothing brings you more steady growth than a happy customer 🤩Hope this is useful. Thank you for reading.
13 CommentsSahil Wakhare
SETTribe IT Solutions • 3K followers
From JDBC to Servlets — The Core Foundations of Enterprise Java📝👨🏻💻Explaining Advanced Java to someone outside the tech world isn’t easy.It’s not just “Java, but tougher.”It’s about mastering how enterprise systems truly work — by:✅ Bridging the front-end with the back-end✅ Connecting applications seamlessly with databases✅ Building scalable and dynamic web applications📘 What This Guide CoversIn my latest resource, I’ve simplified and structured the key pillars of Advanced Java so you can learn faster and build smarter:1️⃣ The 4 Types of Java Applications – Understand each type and when to use them2️⃣ JDBC in Action – Learn how DriverManager, PreparedStatement, and CallableStatement work3️⃣ Hands-on CRUD Operations – Perform Create, Read, Update, and Delete directly in Java4️⃣ Servlets & JSPs Explained – Connect user requests to real-time database results5️⃣ Maven Essentials – Simplify your dependency management like a pro6️⃣ GenericServlet vs HttpServlet – A common interview favorite you must know💡 Why It MattersThis isn’t just theory — it’s packed with real, runnable code snippets to help you practice and master every concept.Whether you’re:Starting your journey toward your first Java Developer role, orRevisiting J2EE fundamentals to sharpen your enterprise development skills,👉 This guide will help you gain the clarity and confidence to build production-grade enterprise applications.🧠 Pro TipOnce you master JDBC + Servlets, you’re not just coding in Java —you’re speaking the language of enterprise software.🔗 Follow for MoreFollow Sanjoy Rudra for more insights on:Java | Spring Boot | Microservices | AWS | DevOps#Java #AdvancedJava #JDBC #Servlets #BackendDevelopment #Maven #FullStackJava #JavaDeveloper #CareerGrowth #TechCommunity
1 CommentVivek Kalyanarangan
IDfy • 20K followers
This 142 page report by Google disagrees with two fundamental truths.👉 “If you want speed, you must sacrifice stability.”👉 “If you want reliability, you must move slower.”The Seven Clusters of Software DeliveryThis report grouped ~5,000 teams into 7 archetypes. 🧱 Foundational Challenges → Survival mode, firefighting, everything hurts.⏳ Legacy Bottleneck → Stuck maintaining Frankenstein systems.🏃 Constrained by Process → Stable, but trapped in red tape treadmill.⚡ High Impact, Low Cadence → Big wins, but at the cost of stability and sanity.🎨 Stable & Methodical → Steady artisans, deliberate pace, zero drama.🛠️ Pragmatic Performers → Ship fast, ship stable. Not glamorous, but deadly effective.🌈 Harmonious High-Achievers → The dream team: fast, stable, low friction, no burnout.💡 If you’re in Cluster 6 or 7: congrats, you’re living the dream.💡 If you’re not: time to stop blaming AI and start fixing your systems.Remember - AI as an Amplifier — Not a Silver Bullet.AI doesn’t fix broken teams. It magnifies strengths and weaknesses:High-performing orgs get a boost.Dysfunctional orgs get chaos.Without good workflows, platforms, and team culture, AI’s local productivity gains just create downstream mess!I will pin a comment on how to get the report.
2 CommentsJeyaram Thangaponnan
Maistering B.V. • 2K followers
🧵 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻𝘀 𝘃𝘀 𝗚𝗲𝗻𝗲𝗿𝗶𝗰 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻𝘀 𝗶𝗻 𝗖#🛒 1.𝗪𝗵𝗮𝘁 𝗔𝗿𝗲 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻𝘀 𝗶𝗻 𝗖#?Collections are like containers that hold multiple items — but they don’t care what type those items are.🧠 Analogy: Think of a grocery bag — you can toss in bread 🍞, milk 🥛and apples 🍎. 👨💻 Code Equivalent: ArrayList can hold int, string, object, etc.⚠️ Downside: No type safety. You might expect a banana 🍌 and accidentally pull out a hammer 🔨.---🏀 2.𝗪𝗵𝗮𝘁 𝗔𝗿𝗲 𝗚𝗲𝗻𝗲𝗿𝗶𝗰 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻𝘀?Generic Collections are type-safe containers — they only accept a specific type.🧠 Analogy: Imagine a basketball rack 🏀 — it only holds basketballs, not tennis balls 🎾 or shoes 👟. 👨💻 Code Equivalent: List<int> only holds integers.✅ Benefits:- Compile-time type checking- No casting required- Cleaner, safer code---🔄 3.𝗖𝗼𝗺𝗺𝗼𝗻 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻 𝗧𝘆𝗽𝗲𝘀 & 𝗨𝘀𝗲 𝗖𝗮𝘀𝗲𝘀| Collection Type | Real-World Analogy | Use Case ||-----------------|--------------------|----------|| ArrayList | Grocery bag 🛍️ | Mixed-type data, legacy systems || Queue | Waiting line 🧍♂️🧍♀️ | Task scheduling, print jobs || Stack | Stack of plates 🍽️ | Undo operations, browser history || Hashtable | Locker system 🔐 | Key-value lookup (non-generic) |---✅ 4.𝗚𝗲𝗻𝗲𝗿𝗶𝗰 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻 𝗧𝘆𝗽𝗲𝘀 & 𝗨𝘀𝗲 𝗖𝗮𝘀𝗲𝘀| Generic Type | Real-World Analogy | Use Case ||----------------------|------------------------|----------|| List<T> | Bookshelf 📚 | Storing typed data (e.g., List<string>) || Queue<T> | Ticket queue 🎟️ | FIFO operations || Stack<T> | Pancake stack 🥞 | LIFO operations || Dictionary<TKey,TValue> | Phonebook 📖 | Fast key-based lookup |---💡5.𝗪𝗵𝘆 𝗣𝗿𝗲𝗳𝗲𝗿 𝗚𝗲𝗻𝗲𝗿𝗶𝗰 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻𝘀?✅ Type Safety: Prevents runtime errors ✅ Performance: No boxing/unboxing ✅ Readability: Clear intent in code ✅ Maintainability: Easier to debug and extend🔍 Example:`csharpList<string> fruits= new List<string> { "Apple", "Orange", "Grape" };`You know exactly what’s inside — no surprises!---🚀 𝟲.𝗣𝗿𝗼 𝗧𝗶𝗽 𝗳𝗼𝗿 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿𝘀If you're building:- APIs 🧩 → Use List<T> or Dictionary<TKey, TValue> for clarity- Queues 🕒 → Use Queue<T> for background jobs- Undo/Redo features ↩️ → Use Stack<T>💬 Always choose Generic Collections unless you have a legacy constraint.---🔚 7.𝗙𝗶𝗻𝗮𝗹 𝗧𝗵𝗼𝘂𝗴𝗵𝘁𝘀Collections are powerful — but choosing the right one is key 🔑.🎯 Generic Collections = Safety + Speed + ScalabilityIf this helped you, drop a ❤️ or 🔁 and share with your dev circle!
3 CommentsGirish Kumar
Bank of America Merrill Lynch • 890 followers
CI/CD Pipeline Explained – From Code to ProductionWe always hear about deploying faster and catching bugs early – but what actually goes on behind the scenes in a modern CI/CD pipeline?🧠 Plan & Code Planning starts in tools like JIRA or Confluence, then the real coding happens in platforms like GitHub or GitLab. Think of this stage as drawing up architectural plans before building the house.🔨 Build & Test (CI) Once the code’s ready, it’s built using tools like Gradle, Bazel, or Webpack, and tested with Jest, JUnit, or Playwright – all automated by CI tools like Jenkins, Buildkite, or GitLab CI. It’s like running every part through a factory line for quality checks before moving forward.🚀 Release & Deploy (CD) After passing tests, the app is packaged with Docker, shipped using Argo CD or AWS Lambda, and the infrastructure is provisioned by Terraform.This stage is the delivery van — taking your finished product to the customer.📊 Monitor & Operate Once live, tools like Prometheus and Datadog keep everything in check. Think of it as the control room with dashboards and alerts, so you’re the first to know when something’s off.
Karthik KK
ASB Bank • 28K followers
The Perfect Tool for Quick Browser Tests - Playwright MCP ServerIn this video, I'll show you why Playwright MCP Server is the perfect middle ground between manual testing and complex automation frameworks. Playwright MCP is a quick and easiest way to test your UI without writing single line of code.ExecuteAutomation YT Video: https://lnkd.in/gQjF3dKZ#executeautomation #YouTube #playwright #mcpserver #testing
1 CommentSraban Kumar jena
Cotiviti • 4K followers
🟣Java Streams and All Its 32 Methods with Examples🌳Day -2 - in the previous post we learned about 20 methods of streams and today will focus on remaining 12 methods of stream. Java Streams, introduced in Java 8, bring a functional programming flavor to Java by allowing you to process collections of data in a declarative and concise manner. A stream represents a sequence of elements supporting sequential and parallel operations.Think of streams as data pipelines where each element flows through a series of transformations (intermediate operations) and ends in a result (terminal operation).21) collect(Collector) :Collects elements into a collection or summary.🌳List<String> collected = list.stream() .collect(Collectors.toList());22) min(Comparator) : Finds the minimum element.🌳Optional<String> min = list.stream().min(Comparator.naturalOrder());23. max(Comparator) :Finds the maximum element.🌳Optional<String> max = list.stream().max(Comparator.naturalOrder());24. count() :Counts the number of elements.🌳long count = list.stream().count();25. anyMatch(Predicate) :Returns true if any element matches.🌳boolean hasA = list.stream().anyMatch(s -> s.startsWith("A"));26. allMatch(Predicate) :Returns true if all elements match.🌳boolean allShort = list.stream().allMatch(s -> s.length() < 10);27) noneMatch(Predicate) :Returns true if no elements match.🌳boolean noneEmpty = list.stream().noneMatch(String::isEmpty);28) findFirst() :Returns the first element.🌳Optional<String> first = list.stream().findFirst();29) findAny() :Returns any element (useful in parallel streams).🌳Optional<String> any = list.stream().findAny();🛠️ Utility Methods : 30) builder() :Used to build a stream manually.🌳Stream<String> stream = Stream.<String>builder().add("A").add("B").build();31) concat(Stream, Stream) :Concatenates two streams.🌳Stream<String> combined = Stream.concat(stream1, stream2);32) ofNullable(T) (Java 9+) :Creates a stream of one element or empty if null.🌳Stream<String> maybe = Stream.ofNullable(possibleNull);✅️Final Thoughts: Java Streams simplify collection processing by enabling fluent, functional-style operations. Mastering each method helps you write concise, powerful, and readable code.Use this post as your go-to reference when working with Java Streams. happy learning 👍follow Sraban Kumar jena for more.#Java #fresher #interview #spring #Java8features #Springboot #questionforgroup
4 CommentsMuhammad Arsalan Nafees (AWS, Genesys Certified Professional)
Avanza Solutions • 1K followers
🔹 Credit Card Authorization Flow (ISO 8583) with Example Values 🔹Let’s break down how your card transaction works when you tap/swipe online or at a store 👇1️⃣ Cardholder → Merchant💳 The customer initiates a payment of $100.00. Example DE values:DE2 – PAN: 4111111111111111 (Card Number)DE3 – Processing Code: 000000 (Purchase)DE4 – Transaction Amount: 000000010000 (USD 100.00)DE7 – Transmission Date & Time: 0821183045 (MMDDhhmmss)DE11 – STAN: 123456DE37 – Retrieval Reference No.: 1234567890122️⃣ Merchant → AcquirerMerchant system sends Authorization Request to Acquirer (e.g., FIS, Stripe).MTI: 0100 (Authorization Request)Key DEs passed along: DE2, DE3, DE4, DE7, DE11, DE373️⃣ Acquirer → Card Network (Visa / Mastercard)Acquirer routes the ISO 8583 message to the Card Network.MTI: 0100Same DEs forwarded.4️⃣ Card Network → Issuer (Bank)The Card Network forwards the request to the Card Issuer (e.g., HSBC, CapitalOne).MTI: 0100Same DEs: PAN, Processing Code, Amount, Timestamp, STAN, RRN.5️⃣ Issuer → Card Network (Response)Issuer validates card status, funds, fraud checks. It sends back Authorization Response (0110). Example DE values:DE38 – Auth ID Response: 654321DE39 – Response Code: 00 (Approved ✅) or 05 (Declined ❌)DE37 – RRN: 123456789012 (must match request)6️⃣ Card Network → AcquirerRoutes 0110 Authorization Response back to Acquirer.7️⃣ Acquirer → MerchantAcquirer forwards the response to Merchant.8️⃣ Merchant → CardholderMerchant shows the result: “Approved” or “Declined”.🚀 This is how a credit card authorization happens in milliseconds!🔖 Hashtags #CardPayments #FintechPayments #Fintech #DigitalPayments #Payments #Card #Technology #LinkedinLearning #Carddetails #Connections #Authorization #Acquirer #Issuer
2 CommentsSahn Lam
ByteByteGo • 154K followers
What is API GatewayAn API gateway serves as the single entry point for all clients, providing a unified interface to microservices while simplifying client-side code and hiding the application's internal structure.As an orchestration layer, it manages request routing, composition, and protocol translation to enable seamless integration and efficient management of backend services. This orchestration is especially valuable in microservices architectures, where it streamlines client interactions with multiple services and helps the system operate cohesively.
13 CommentsAbhishek Anand
EPAM Systems • 2K followers
🚀 CI/CD Pipeline with Jenkins, Docker, and KubernetesThis diagram represents a modern CI/CD workflow designed for scalable and reliable software delivery.✅ Code is pushed to GitHub, triggering Jenkins CI jobs for dependency checks, code quality analysis, unit testing and Docker image creation.✅ The generated Docker image is pushed to a container registry (e.g., DockerHub/Harbor/Artifactory).✅ The CD pipeline leverages ArgoCD to automatically deploy the latest image to the Kubernetes cluster.✅ Prometheus & Grafana ensure proactive monitoring, alerting, and observability of the system.✅ Email / Slack notifications keep teams updated on pipeline status, deployment success or failures.This setup ensures:Faster and automated delivery cycles ⚡Enhanced code quality and security checks 🔒Scalable deployments across environments (Dev, QA, Prod) 🛠️Improved collaboration and visibility across teams 👥Such an end-to-end CI/CD pipeline enables organizations to deliver software faster, safer, and with higher confidence.
8 CommentsMohammad Sajib Miah
RedDot Digital Limited • 5K followers
Deep Dive into Flyway for Java Springboot ProjectsFlyway is a powerful tool for managing database migrations, but there's much more to it than just versioned scripts. In this article, I explore:✅ Why use Flyway and how it simplifies database version control ✅ How Flyway handles checksums ✅ Best practices for repeatable migrations ✅ What happens if a script is changed after deployment ✅ Corner cases developers often overlook ✅ Advanced features like group, clean, and callbacksWhether you're new to Flyway or looking to master its internals, this blog will help you avoid common pitfalls and write safer migrations.📖 Read it here: 👉 https://lnkd.in/gY_aE8hV#Java #SpringBoot #Flyway #DatabaseMigration #SoftwareEngineering #BackendDevelopment
Preeti Gupta
Citi • 952 followers
Launching a Technical Article Series on Spring Boot!Spring Boot is packed with powerful features, but many remain underutilized. To bridge this gap, I’m starting a "Lesser-Known Spring Boot Features" series on Medium to explore hidden gems, practical implementations, and real-world use cases.First: Query By Example (QBE) + Specifications for dynamic, flexible queries.🔗 Read here: https://lnkd.in/eWgVMbaq Check it out, drop your thoughts, and let’s discuss! #SpringBoot #Java #SoftwareEngineering #TechWriting
1 Comment
Explore top content on LinkedIn
Find curated posts and insights for relevant topics all in one place.
View top contentOthers namedJinisha Vora
3 others named Jinisha Vora are on LinkedIn
See others namedJinisha Vora