r/JavaProgramming • u/javinpaul • 6d ago
r/JavaProgramming • u/Useful-Bee6543 • 7d ago
I've been quietly turning a Java interview question dump into an actual platform, here's everything it does now
So a while back I started this as a boring markdown file of Java interview questions for myself. It has since spiraled into something I probably over-engineered, but here we are, figured I'd do a proper writeup instead of just dropping a link.
The core is a 300+ question bank, but not just Q&A pairs, actual structured interview-focused answers across Core Java, Java 8+, Collections, multithreading/concurrency, JVM internals and GC, exception handling, Spring Boot, Spring Security, Spring Data JPA, Hibernate, REST, microservices, Kafka, Redis, SQL, Docker, Kubernetes, AWS, design patterns, and some NoSQL (Mongo, Couchbase) thrown in. Basically anything that shows up in a backend interview loop.
DSA prep is pattern-wise and topic-wise, plus a week-wise roadmap if you want structure instead of chaos, difficulty tiers, and company-specific problems where I could find reliable sources for them.
System design section covers HLD concepts, scaling approaches, tradeoffs, the usual "how would you design X" stuff with actual explanations instead of just diagrams you have to reverse engineer yourself.
Mock interview mode throws questions at you by topic (recently added filtering so you're not just getting all 300+ questions randomly), practice mode, self-eval, and a revision workflow so you're not just doing it once and forgetting.
Then there's the stuff I'm honestly most proud of since it's not just content, it's actual product work:
- Progress tracking per question: confident / revising / weak, saved per user
- Bookmarks with a dedicated page
- Highlights that persist, saved per user
- Personal notes with a rich text editor, code block support, multiple notes per question, private to you
- Ask AI: select any text, hit a button, it opens Perplexity with an interview-focused prompt pre-loaded asking for a concise, easy explanation of whatever you selected
- Analytics dashboard: total attempted, confidence distribution, revision insights
- Search: global instant search plus filters for topic/category/DSA/system design
The newest thing and honestly the reason I'm posting is the JD Analyzer. You paste a job description and it gives you a priority radar, the skills to actually focus on, target questions, curated resources, role expectations, and a personalized roadmap. No more prepping generically and hoping it overlaps with what the role actually wants.
There's also community submission (people can submit questions, I've got an admin portal to review/approve/reject them so it doesn't turn into garbage), full JWT auth, role-based access, and it's all built on React + Spring Boot + MongoDB Atlas, deployed on Vercel/Render.
Roadmap if anyone cares: React/Angular/Python/Node prep tracks, AI-powered mock interviews (actual AI voice mocks eventually), a spaced repetition engine, company-wise tracks, a resume analyzer, GitHub profile analyzer, AI-generated study plans and flashcards, and a browser extension for one-click saving questions from wherever you find them.
It started as "I need to remember these answers for myself" and turned into basically a part time job. Still solo building this, still probably has bugs, still completely free, no premium tier, no paywall, just wanted to build something actually useful.
If you made it this far, here it is: https://learnin-prep.vercel.app/dashboard
Genuinely want feedback, especially if something's broken or confusing. Drop a comment or DM.
r/JavaProgramming • u/resumeinminutes • 7d ago
Senior Java Developer Resume Templates with Example
galleryr/JavaProgramming • u/p3t-code • 7d ago
The performance issue in paging DB results - not a problem at all?
Hi everybody,
I am developing and maintaining a library for more efficient paging than the offset/size approach used by default in Spring's JDBC Repositories.
My main concerns are:
- Fetching the total count with every page request can be quite expensive.
- Fetching very high page numbers can be expensive as well, since the DB has to fetch all records before the requested page — just to discard them.
I developed this library in my free time to have a robust and flexible solution available, and we use it in a professionally developed cloud service.
Still, I get very little community feedback, so I'm wondering whether these problems are solved differently in other projects...
I'm curious! Please let me know if you have a good solution for these problems :-)
r/JavaProgramming • u/Pristine_Fishing_302 • 7d ago
Want to Start DSA in JAVA? Bit Confused about resources. Helpppp..
r/JavaProgramming • u/Little_Atmosphere_7 • 7d ago
NEED ADVICE ON TRANSITION FROM SAP TO OTHER TECHNOLOGY
People who transitioned from SAP to other technology like Backend Development after 2-3 years, how did you manage it ? What were your strategy and how's life going now ?
I want to move away from SAP as truth to be told I never liked it - even though it's really good but I just don't enjoy working with this ecosystem and always wanted to learn and move to Backend Development . But it's been 3 years already and I am afraid I am making wrong decisions.
r/JavaProgramming • u/weightedsum • 8d ago
AetherGate: A Simpler Way to Handle OAuth 2.1 registration in Java
Working with OAuth 2.1 can sometimes feel overwhelming, especially when dealing with dynamic client registration and security features like PKCE. If you're building a Java application that interacts with Model Context Protocol (MCP) or other OAuth 2.1-protected services, AetherGate might be helpful.
What Does AetherGate Do?
It simplifies the process of integrating OAuth 2.1 into your Java applications by handling:
- Automatic discovery of server metadata.
- Dynamic client registration, including support for pre-registered clients.
- PKCE (Proof Key for Code Exchange) for secure authorization flows.
- Token caching to reduce unnecessary requests.
Quick Start
Here's how you can use it to obtain an access token:
var aetherGate = new AetherGate();
AuthorizationSession session = aetherGate.openSession(ClientConfig.builder()
.serverBaseUrl("http://localhost:8001/mcp")
.redirectUrl("http://localhost:8002/callback")
.scopes("user")
.isInsecure(true) // Only for development!
.build());
String token = aetherGate.obtainAccessToken(session);
Once you have the token, it's easy to use with libraries like langchain4j to access protected MCP servers:
McpTransport transport = StreamableHttpMcpTransport.builder()
.url("http://localhost:3001/mcp")
.customHeaders(Map.of("Authorization", "Bearer " + token))
.build();
AetherGate is open-source and available on GitHub.
If you're interested in giving it a try or have feedback, feel free to check it out!
r/JavaProgramming • u/ramanai10 • 8d ago
Project ideas and reference for Java / Springboot and Microservices / Reach
Hi All, I have currently 4 years of experience in Java, SQL, Plsql, Knockout JS but working in a legacy platform (monolithic) in a service based company (banking project).
Need ideas and resources for creating projects in Spring Boot, Microservices, ReactJS and NodeJS, to showcase in resume and for switching to a product based company. Please suggest
r/JavaProgramming • u/lIlIlIKXKXlIlIl • 8d ago
Your Spring Boot App Starts. That Doesn’t Mean It’s Ready for Production.
r/JavaProgramming • u/something97382747 • 9d ago
Trying to learn programming to get a job as early as I can
r/JavaProgramming • u/mipiaccionoimeme- • 9d ago
OpenCraft
i made a voxel engine minecraft like game (WIP) which i plan to develop while listening to the community. If u wanna be a part of this check out my repo OpenCraft on coder088 (github) and leave a star, it would make my day.
r/JavaProgramming • u/orologiostupido • 10d ago
i made a java minecraft launcher
r/JavaProgramming • u/javinpaul • 10d ago
Difference between API Gateway and Load Balancer in Microservices Architecture?
r/JavaProgramming • u/Fire_Fist494 • 10d ago
Guys first post and want to know about java
So my new sem has started and this time, one of my new subject is java and I have no idea where to properly learn it form. Can anyone give me some suggestions, so that I could have my studies go smoothly
r/JavaProgramming • u/jaikrn • 10d ago
Should I make Java DSA visualizer.
As a side project i am thinking to make java which uses Java Reflection to get the internal structure of the java data structures like HashMap, Hashtable on backend and sends this data to frontend to ReactJs real real-time rendering of data structure State.
r/JavaProgramming • u/LowSet2041 • 10d ago
CloudStub mocks AWS in-process.
Hey all, I have been working on CloudStub, an open-source in-process AWS mock for JVM integration tests (Java, Kotlin, Scala), and we just published 0.1.0-beta.8 to Maven Central.
The problem it targets: container-based AWS mocking (a mock image run through Testcontainers) is powerful, but it drags on your local test loop and CI with image pulls and container boot and teardown. CloudStub skips all of that.
How it works, no magic: it boots a lightweight HTTP mock inside your JVM and points the AWS SDK's endpoint at it (via the aws.endpoint-url system property), so your code makes real AWS SDK v2 calls against a local stub. No Docker, no containers, no separate process. WireMock and Jetty are shaded into private packages and fully hidden, so there is no classpath or Spring Boot BOM conflict.
What is nice about it:
- No container overhead. Nothing to pull or boot: the mock runs in the same JVM as your tests.
- Stateful, not just canned responses. An SQS
SendMessageis returned by a laterReceiveMessage, and DynamoDBPutItem/GetItem/Queryreturn live data, so you test real round-trips. - Modular. Each service is an isolated module. If you only use DynamoDB, only that module loads.
- Not just for tests, it also runs standalone.
cloudstub-localis a drop-in local mock server on port 4566 (soAWS_ENDPOINT_URL=http://localhost:4566works unchanged), auto-downloads the services you enable, and ships a CLI (cloudstub/clb) plus a web console at/console. Download: https://github.com/cloudstub/cloudstub/releases/download/v0.1.0-beta.8/cloudstub-local.jar - Two ways to load services. Add a service module as a normal test dependency, or skip Gradle for it and list it on the extension with
.withModules("sqs", "dynamodb"), which fetches the jar from Maven Central on first run and caches it under~/.cloudstub/modules. (S3 is the exception: it ships a client-side SDK component, so it must be a normal test dependency.) - Available now in beta.8: SQS, SNS, S3, Secrets Manager, DynamoDB, Lambda, and SSM (Systems Manager Parameter Store). AWS SDK v2 is first-class, and there is an SDK v1 companion module.
- Java 17 or newer.
Setup (Gradle):
// cloudstub-testing brings the engine plus the JUnit 5 and 6 extension
// (cloudstub-junit and cloudstub-core come in transitively)
testImplementation "io.github.cloudstub:cloudstub-testing:0.1.0-beta.8"
// Service modules are optional here: list them on the extension with .withModules(...) and they are
// auto-downloaded from Maven Central. Add a service as a dependency only if you prefer it on the
// classpath (and S3 must be a dependency):
// testImplementation "io.github.cloudstub:cloudstub-dynamodb:0.1.0-beta.8"
Setup (Maven):
<dependency>
<groupId>io.github.cloudstub</groupId>
<artifactId>cloudstub-testing</artifactId>
<version>0.1.0-beta.8</version>
<scope>test</scope>
</dependency>
<!-- Service modules are optional: use .withModules(...) to auto-download them instead. Declare one
explicitly only if you prefer it on the classpath (and S3 must be a dependency). -->
<dependency>
<groupId>io.github.cloudstub</groupId>
<artifactId>cloudstub-dynamodb</artifactId>
<version>0.1.0-beta.8</version>
<scope>test</scope>
</dependency>
A test looks like this. You exercise your own code, and CloudStub stands in for AWS:
static CloudStubExtension cloud = new CloudStubExtension()
.withModules("dynamodb"); // fetched from Maven Central on first run, then cached; no Gradle dependency needed
void savedItemIsReadBack() {
repository.save("order-1", "placed"); // your repo, using a normal AWS SDK v2 DynamoDbClient
assertEquals(Optional.of("placed"), repository.find("order-1")); // round-trips through the stub
}
It is beta, so the API can still shift and the service coverage is deliberately narrow, but the core engine is stable and the modules above are usable today.
- Repo: https://github.com/cloudstub/cloudstub (in-repo examples under
cloudstub-example). - Standalone runnable examples: https://github.com/cloudstub/cloudstub-showcase
- Docs: https://cloudstub.github.io/cloudstub/
I would genuinely like feedback on the architecture, and if there is an AWS service or SDK behavior you want stubbed next, open an issue. Thanks.
r/JavaProgramming • u/ComprehensiveOwl5453 • 10d ago
Need system suggestion to create.
We need a system suggestion. Currently, we're studying the GUI of netbeans 8.2 v + database, and our prof told that we need to ask companies for suggestions on what what kind of software/anything can be made ewith the GUI. Im not sure yet if we can include the database in the proposal since we're just starting to learn this week, but Im looking for suggestions for the types of systems/projects we can create. We're beginners with GUI but willing to practice if needed. Also, we're using java language.
r/JavaProgramming • u/Dry_Couple8852 • 10d ago
I have a hard time changing the arrays
help
I convert LinkedList<String> to String [] for easy iteration
I expect that the array goes from [2,x,3] to [6] as the process replaced the "x" with the answer of the equation, then deletes the "2" and "3"
but when I run the main program. this method returns the same [2,x,3].
r/JavaProgramming • u/Dry_Employer_8004 • 11d ago
Need Advice - Is it too late to start with Java developer Job?
Hi everyone,
I’m looking for some honest advice regarding a career switch, and I’ll try to keep this as clear as possible.
I graduated with a B.Tech in Computer Science from an engineering college in Vellore during the COVID period. Due to the hiring slowdown and my own lack of preparation in DSA, I couldn’t secure a product-based role through placements or off-campus. I ended up joining a service-based company at a standard fresher package.
Initially, I was trained in Java and React, which made me think I’d be working on development projects. However, I was instead assigned to an SAP implementation project. I had no prior experience or interest in SAP, and I did try to push back, but I was told early in my career I shouldn’t be too selective and that SAP has good scope.
I decided to give it a fair shot. But after about 1.5 years in my new role, I realised this domain isn’t for me. I don’t enjoy the work and get very little job satisfaction. I tried switching internally to a Java-based project, but my manager didn’t approve my release.
At that point, I decided to prepare for a company switch into development. I started studying DSA and Java (along with Spring Boot), but I struggled with consistency. A friend encouraged me to still give interviews, and I did—but they went poorly. That experience really affected my confidence.
Since then, I’ve been stuck in a cycle: I get frustrated, start preparing again, lose momentum when things get difficult, and drop it midway. This has happened multiple times over the past few years.
I’ll be honest—I know I’ve been laid back and undisciplined, and I take responsibility for where I am right now.
Currently, I have around 5 years of experience, but all of it is in SAP. The frustration with my job and career direction has started affecting my mental health, and I’ve reached a point where I feel I have to take this seriously now.
I’ve decided to give this one final, focused attempt over the next 4–6 months to switch into a development role. I understand that my experience may not carry much weight in this domain and that I may have to start with SDE-1 / junior roles—and I’m okay with that.
What I’m looking for:
How should I realistically approach this transition in the next 4–6 months?
What should I prioritize: DSA, projects, backend development, or something else?
Has anyone here made a similar switch from a different domain into development? What worked for you?
Any advice on staying consistent and not falling into the same cycle again?
I’d really appreciate honest feedback, even if it’s tough to hear.
Thanks in advance.
r/JavaProgramming • u/aumiom • 11d ago
After nearly 10 years with Spring Boot, this is how I’d learn it from scratch today
r/JavaProgramming • u/javinpaul • 11d ago