<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url><loc>https://notnullpratik.dev/</loc></url><url><loc>https://notnullpratik.dev/books</loc></url><url><loc>https://notnullpratik.dev/blog</loc></url><url><loc>https://notnullpratik.dev/blog?page=2</loc></url><url><loc>https://notnullpratik.dev/blog?page=3</loc></url><url><loc>https://notnullpratik.dev/blog?page=4</loc></url><url><loc>https://notnullpratik.dev/blog?page=5</loc></url><url><loc>https://notnullpratik.dev/blog?page=6</loc></url><url><loc>https://notnullpratik.dev/blog?page=7</loc></url><url><loc>https://notnullpratik.dev/blog?page=8</loc></url><url><loc>https://notnullpratik.dev/blog?page=9</loc></url><url><loc>https://notnullpratik.dev/blog?page=10</loc></url><url><loc>https://notnullpratik.dev/blog?page=11</loc></url><url><loc>https://notnullpratik.dev/blog?page=12</loc></url><url><loc>https://notnullpratik.dev/blog?page=13</loc></url><url><loc>https://notnullpratik.dev/blog?page=14</loc></url><url><loc>https://notnullpratik.dev/blog?page=15</loc></url><url><loc>https://notnullpratik.dev/blog?page=16</loc></url><url><loc>https://notnullpratik.dev/blog?page=17</loc></url><url><loc>https://notnullpratik.dev/blog?page=18</loc></url><url><loc>https://notnullpratik.dev/blog?page=19</loc></url><url><loc>https://notnullpratik.dev/blog?page=20</loc></url><url><loc>https://notnullpratik.dev/blog?page=21</loc></url><url><loc>https://notnullpratik.dev/blog?page=22</loc></url><url><loc>https://notnullpratik.dev/blog/how-git-works-internally</loc></url><url><loc>https://notnullpratik.dev/blog/microservices-vs-monolithic-architecture</loc></url><url><loc>https://notnullpratik.dev/blog/software-design-patterns-real-world-examples</loc></url><url><loc>https://notnullpratik.dev/blog/solid-principles</loc></url><url><loc>https://notnullpratik.dev/blog/caching-types-and-techniques</loc></url><url><loc>https://notnullpratik.dev/blog/how-apache-kafka-works</loc></url><url><loc>https://notnullpratik.dev/blog/how-database-indexes-work</loc></url><url><loc>https://notnullpratik.dev/blog/most-commonly-used-git-commands</loc></url><url><loc>https://notnullpratik.dev/blog/mvcc-in-databases</loc></url><url><loc>https://notnullpratik.dev/blog/shenandoah-gc</loc></url><url><loc>https://notnullpratik.dev/blog/wal-databases</loc></url><url><loc>https://notnullpratik.dev/blog/database-internals</loc></url><url><loc>https://notnullpratik.dev/blog/top-100-java-virtual-threads-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/top-100-oracle-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/spring-ai-top-100-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/top-100-spring-boot-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/kafka-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/kubernetes-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/mongodb-indexes-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/thread-per-task-executor</loc></url><url><loc>https://notnullpratik.dev/blog/mongodb-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/single-thread-executor</loc></url><url><loc>https://notnullpratik.dev/blog/usestate-vs-useref</loc></url><url><loc>https://notnullpratik.dev/blog/cached-thread-pool-executor</loc></url><url><loc>https://notnullpratik.dev/blog/java-stream-methods</loc></url><url><loc>https://notnullpratik.dev/blog/completable-future-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/covariant-arrays-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/open-closed-principle</loc></url><url><loc>https://notnullpratik.dev/blog/why-one-should-prefer-class-hierarchies-over-tagged-classes-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/why-one-should-use-varargs-judiciously-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/why-one-should-prefer-collections-over-stream-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/why-one-should-override-object-clone-judicioulsy-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/eliminate-obsolete-references-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/prefer-try-with-resources-over-try-finally-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/prefer-static-factory-methods-over-constructors-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/always-override-hashcode-and-equals-together</loc></url><url><loc>https://notnullpratik.dev/blog/next-tick-queue-vs-micro-task-queue-in-node-js</loc></url><url><loc>https://notnullpratik.dev/blog/objects-hash-code-vs-objects-hash-method</loc></url><url><loc>https://notnullpratik.dev/blog/prefer-static-member-classes-over-non-static-member-classes</loc></url><url><loc>https://notnullpratik.dev/blog/reflection-apis-vs-method-handles</loc></url><url><loc>https://notnullpratik.dev/blog/why-method-references-are-preferable-over-lambdas-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/classloaders-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/unsafe-class-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/use-form-status-hook-in-react</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-spring-configuration-questions</loc></url><url><loc>https://notnullpratik.dev/blog/cache-signal-in-react-js</loc></url><url><loc>https://notnullpratik.dev/blog/servlet-and-filter-registration-in-spring-boot</loc></url><url><loc>https://notnullpratik.dev/blog/use-effect-event-in-react-js</loc></url><url><loc>https://notnullpratik.dev/blog/activity-in-react-js</loc></url><url><loc>https://notnullpratik.dev/blog/flexible-constructor-bodies-in-java-25</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-questions-of-query-annotation-in-spring-jpa</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-transactional-annotation-in-spring</loc></url><url><loc>https://notnullpratik.dev/blog/vue-js-run-with-context-api</loc></url><url><loc>https://notnullpratik.dev/blog/render-to-pipeable-stream-in-react-js</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-async-processing-questions-in-spring</loc></url><url><loc>https://notnullpratik.dev/blog/callable-vs-runnable-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/flush-synch-in-react-js</loc></url><url><loc>https://notnullpratik.dev/blog/create-root-vs-hydrate-root</loc></url><url><loc>https://notnullpratik.dev/blog/generics-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/preload-module-in-react-js</loc></url><url><loc>https://notnullpratik.dev/blog/next-tick-in-vue-js</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-java-25-features</loc></url><url><loc>https://notnullpratik.dev/blog/its-omarchy-time</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-vite-features</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-considerations-for-rate-limiter-system-design</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-must-have-linux-tools</loc></url><url><loc>https://notnullpratik.dev/blog/top-5-linux-terminals</loc></url><url><loc>https://notnullpratik.dev/blog/top-design-patterns-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/executor-service-types-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-use-external-store-react-hook-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/the-weird-case-of-yes-command-in-linux</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-react-use-callback-hook-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-react-use-memo-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/use-optimistic-in-react-19</loc></url><url><loc>https://notnullpratik.dev/blog/date-in-linux</loc></url><url><loc>https://notnullpratik.dev/blog/linux-ricing</loc></url><url><loc>https://notnullpratik.dev/blog/react-compiler</loc></url><url><loc>https://notnullpratik.dev/blog/rules-of-react</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-java-arraylist-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-react-use-context-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-react-use-state-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/soft-links-in-linux</loc></url><url><loc>https://notnullpratik.dev/blog/linux-file-systems</loc></url><url><loc>https://notnullpratik.dev/blog/teleport-in-vue-js</loc></url><url><loc>https://notnullpratik.dev/blog/provide-and-inject-in-vue-js</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-omarchy-features</loc></url><url><loc>https://notnullpratik.dev/blog/async-components-in-vue-js</loc></url><url><loc>https://notnullpratik.dev/blog/linux-file-system-structure</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-linux-distributions</loc></url><url><loc>https://notnullpratik.dev/blog/how-does-the-volatile-keyword-in-java-work</loc></url><url><loc>https://notnullpratik.dev/blog/top-20-basic-linux-shell-commands</loc></url><url><loc>https://notnullpratik.dev/blog/top-20-essential-vim-commands</loc></url><url><loc>https://notnullpratik.dev/blog/vue-js-watchers</loc></url><url><loc>https://notnullpratik.dev/blog/css-basic-concepts</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-java-hashmap-interview-questions</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-vue-js-concepts</loc></url><url><loc>https://notnullpratik.dev/blog/vue-js-keep-alive</loc></url><url><loc>https://notnullpratik.dev/blog/concurrent-collections-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/reentrant-lock-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/top-python-web-frameworks</loc></url><url><loc>https://notnullpratik.dev/blog/javascript-bundlers</loc></url><url><loc>https://notnullpratik.dev/blog/key-features-of-executor-frameowork-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/sfc-in-vue-js</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-java-streams-interview-questions-with-answers</loc></url><url><loc>https://notnullpratik.dev/blog/java-database-connectivity-sans-framework</loc></url><url><loc>https://notnullpratik.dev/blog/vue-js-directives</loc></url><url><loc>https://notnullpratik.dev/blog/java-connection-pooling-libraries</loc></url><url><loc>https://notnullpratik.dev/blog/prepared-statement-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/setup-hook-in-vue-js</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-java-stream-methods</loc></url><url><loc>https://notnullpratik.dev/blog/vue-js-event-modifiers</loc></url><url><loc>https://notnullpratik.dev/blog/bean-scopes-in-spring</loc></url><url><loc>https://notnullpratik.dev/blog/hashtable-vs-hashmap-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/ref-vs-reactive-in-vue-js</loc></url><url><loc>https://notnullpratik.dev/blog/spring-ai</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-react-hooks</loc></url><url><loc>https://notnullpratik.dev/blog/virtual-threads-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/vue-js-lifecycle-hooks</loc></url><url><loc>https://notnullpratik.dev/blog/vue-js-reactivity-system</loc></url><url><loc>https://notnullpratik.dev/blog/controller-vs-rest-controller-in-spring-boot</loc></url><url><loc>https://notnullpratik.dev/blog/top-10-spring-boot-annotations</loc></url><url><loc>https://notnullpratik.dev/blog/types-of-garbage-collectors-in-java</loc></url><url><loc>https://notnullpratik.dev/blog/the-choice-of-tech-stack-is-overrated</loc></url><url><loc>https://notnullpratik.dev/blog/dont-let-ai-be-your-voice-its-not-you</loc></url><url><loc>https://notnullpratik.dev/blog/javascripts-deja-vu-repeating-javas-finalization-mistake</loc></url><url><loc>https://notnullpratik.dev/blog/javas-prototype-pattern-smart-copypasta-for-new-objects</loc></url><url><loc>https://notnullpratik.dev/blog/want-a-faster-java-program-meet-epsilon-gc-and-its-dangerous-tradeoffs</loc></url><url><loc>https://notnullpratik.dev/blog/the-redis-cache-nightmare-and-we-fixed-it-with-one-simple-command</loc></url></urlset>