- https://en.wikipedia.org/wiki/List_of_software_development_philosophies
- https://en.wikipedia.org/wiki/Adaptive_software_development
- https://en.wikipedia.org/wiki/Agile_software_development
- https://blog.allegro.tech/2020/05/hexagonal-architecture-by-example.html
- https://www.vinaysahni.com/best-practices-for-building-a-microservice-architecture
- https://fideloper.com/hexagonal-architecture
- https://martinfowler.com/bliki/CQRS.html
- https://martinfowler.com/eaaDev/EventSourcing.html
- https://bulldogjob.pl/articles/122-cqrs-i-event-sourcing-czyli-latwa-droga-do-skalowalnosci-naszych-systemow
- https://www.schibsted.pl/blog/time-travelling-with-event-sourcing/
- https://leanpub.com/visualising-software-architecture/read#guidebook-principles
- https://en.wikipedia.org/wiki/Enterprise_Integration_Patterns
- https://en.wikipedia.org/wiki/Sorting_algorithm
- https://vaadin.com/learn/tutorials/ddd/ddd_and_hexagonal
- https://en.wikipedia.org/wiki/Domain-driven_design
- https://en.wikipedia.org/wiki/Behavior-driven_development
- https://en.wikipedia.org/wiki/Given-When-Then
- https://8thlight.com/blog/elizabeth-engelman/2015/01/22/single-responsibility-principle-why-does-it-matter.html
- https://blog.bradfieldcs.com/you-are-not-google-84912cf44afb
- https://www.linkedin.com/pulse/architecture-guiding-principles-jayesh-prajapati/
- https://pubs.opengroup.org/architecture/togaf8-doc/arch/chap29.html
- https://medium.com/adobetech/three-principles-of-api-first-design-fa6666d9f694
- https://apifriends.com/api-creation/api-first/
- https://apifriends.com/api-management/api-first-design-api-first/
- https://swagger.io/resources/articles/adopting-an-api-first-approach/
- https://www.axway.com/en/products/api-management/gateway
- https://swagger.io/resources/articles/how-to-build-an-api-from-the-ground-up/
- https://swagger.io/blog/api-design/api-design-guidelines/
- https://swagger.io/blog/api-documentation/api-documentation-best-practices/
- https://cloud.google.com/apis/design/
- https://www.techgeeknext.com/spring-boot-security/oauth-interview-questions
- https://zapier.com/engineering/apikey-oauth-jwt/
- https://anil-pace.medium.com/json-web-tokens-vs-oauth-2-0-85dd0b32057d
- https://medium.com/identity-beyond-borders/json-web-tokens-jwt-as-oauth-2-0-bearer-access-tokens-89120c94c082
- https://www.javainuse.com/misc/oauth-interview-questions
- http://www.restapitutorial.com/lessons/httpmethods.html
- https://graphql.org/
- https://jwt.io/
- https://medium.com/@emailbivas/the-principles-of-rest-6b00deac91b3
- https://medium.com/future-vision/the-principles-of-rest-6b00deac91b3
- https://en.wikipedia.org/wiki/Binary_search_algorithm
- http://blog.castsoftware.com/five-reasons-to-measure-software-complexity/
- http://bigocheatsheet.com/ (Know Thy Complexities!)
- https://en.wikipedia.org/wiki/Programming_complexity
- https://en.wikipedia.org/wiki/Computational_complexity_theory
- https://en.wikipedia.org/wiki/ACID
- https://en.wikipedia.org/wiki/Isolation_(database_systems)
- https://en.wikipedia.org/wiki/Eventual_consistency
- http://www.baeldung.com/java-8-interview-questions
- https://www.tutorialspoint.com/java8/java8_interview_questions.htm
- https://www.sensedeep.com/blog/posts/stories/web-developer-security-checklist.html
- https://www.journaldev.com/2696/spring-interview-questions-and-answers
- http://javarevisited.blogspot.com/2014/07/top-50-java-multithreading-interview-questions-answers.html
- https://www.tutorialspoint.com/spring/spring_interview_questions.htm
- https://www.javacodegeeks.com/2014/05/spring-interview-questions-and-answers.html
- http://javarevisited.blogspot.in/2015/10/133-java-interview-questions-answers-from-last-5-years.html
- https://www.quora.com/How-do-I-interview-a-software-architect
- https://hackernoon.com/50-data-structure-and-algorithms-interview-questions-for-programmers-b4b1ac61f5b0
- http://www.java67.com/2018/06/data-structure-and-algorithm-interview-questions-programmers.html
- https://career.guru99.com/hibernate-interview-questions/
- http://www.java67.com/2016/02/top-20-hibernate-interview-questions.html
- https://dzone.com/articles/top-29-microservices-interview-questions-for-2019
- https://medium.com/97-things/technical-interviewing-is-a-skill-worth-developing-2afa0ada8d95
- https://thoughts-on-java.org/ultimate-guide-to-implementing-equals-and-hashcode-with-hibernate/
- https://medium.com/platform-engineer/guide-to-java-profilers-e344ce0339e0
- https://medium.com/platform-engineer/understanding-java-garbage-collection-54fc9230659a
- https://medium.com/platform-engineer/understanding-jvm-architecture-22c0ddf09722
- https://medium.com/platform-engineer/understanding-java-memory-model-1d0863f6d973
- https://www.nagarro.com/en/blog/post/24/performance-improvement-for-hashmap-in-java-8
- http://tutorials.jenkov.com/java-concurrency/index.html
- https://leanpub.com/whatsnewinjava8/read
- https://stackoverflow.com/questions/6638735/whats-invokedynamic-and-how-do-i-use-it
- https://commons.apache.org/
- https://ocpjava.wordpress.com/useful-links/
- https://en.wikipedia.org/wiki/Java_collections_framework
- https://en.wikipedia.org/wiki/Event_dispatching_thread
- https://cucumber.io/
- https://kafka.apache.org/documentation/
- https://docs.oracle.com/javase/tutorial/java/data/numberformat.html
- https://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html
- https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/java-getstarted.html
- https://en.wikipedia.org/wiki/OSGi
- https://stackoverflow.com/questions/13487987/where-to-use-ejb-3-1-and-cdi
- https://site.mockito.org/
- https://stackoverflow.com/questions/39432699/what-is-the-difference-between-streams-and-collections-in-java-8
- https://www.baeldung.com/java-period-duration
- https://github.com/vojtechruz/spring-core-cert-notes-4.2
- https://github.com/vojtechruz/spring-web-cert-notes-4.2
- https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/SpringApplication.html
- https://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-using-springbootapplication-annotation.html
- https://www.baeldung.com/spring-events
- http://www.wideskills.com/spring/spring-bean-lifecycle
- http://www.baeldung.com/spring-cloud-tutorial
- https://reflectoring.io/spring-boot-modules/
- https://reflectoring.io/spring-hexagonal/
- https://medium.com/platform-engineer/microservices-architecture-8bb5a4f46da0
- https://medium.com/@madhupathy/simplified-microservices-building-with-spring-cloud-netflix-oss-eureka-zuul-hystrix-ribbon-2faa9046d054
- Microservices Best Practices for Java
- https://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-feign.html
- https://www.baeldung.com/intro-to-feign
- https://www.baeldung.com/introduction-to-hystrix
- https://www.baeldung.com/introduction-to-wiremock (stubbing, testing)
- https://microservices.io/patterns/observability/distributed-tracing.html
- https://microservices.io/patterns/index.html
- https://dzone.com/articles/top-29-microservices-interview-questions-for-2019
- https://dzone.com/articles/top-microservices-interview-questions-for-2019-par
- https://spring.io/blog/2016/05/31/zero-downtime-deployment-with-a-database
- https://github.com/sindresorhus/awesome
- https://github.com/deephacks/awesome-jvm
- https://github.com/akullpp/awesome-java
- https://github.com/KotlinBy/awesome-kotlin
- https://martinfowler.com/bliki/TechnicalDebt.html
- https://12factor.net/
- https://en.wikipedia.org/wiki/Design_Patterns (Gang of four)
- https://sourcemaking.com/refactoring
- https://en.wikipedia.org/wiki/SOLID_(object-oriented_design)
- https://en.wikipedia.org/wiki/Package_principles
- https://en.wikipedia.org/wiki/Loose_coupling
- https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
- https://en.wikipedia.org/wiki/Code_reuse
- https://en.wikipedia.org/wiki/Information_architecture
- https://8thlight.com/blog/elizabeth-engelman/2015/01/22/single-responsibility-principle-why-does-it-matter.html
- https://en.wikipedia.org/wiki/Long-term_support
- https://en.wikipedia.org/wiki/Kludge
- https://en.wikipedia.org/wiki/Systems_design
- https://en.wikipedia.org/wiki/Dynamic_programming
- https://martinfowler.com/articles/serverless.html
- https://www.hackerearth.com/practice/notes/big-o-cheatsheet-series-data-structures-and-algorithms-with-thier-complexities-1/
- https://www.jhipster.tech/
- https://keepachangelog.com/en/1.0.0/
- https://blog.softwaremill.com/docker-support-in-new-java-8-finally-fd595df0ca54
- https://en.wikipedia.org/wiki/Information_architecture
- https://www.regular-expressions.info/reference.html
- https://semver.org/
- https://cssguidelin.es/
- https://www.themuse.com/advice/30-behavioral-interview-questions-you-should-be-ready-to-answer
- https://www.jrebel.com/blog/how-to-use-java-integration-testing
Some entries might be duplicated.
- https://en.wikipedia.org/wiki/C4_model
- https://medium.com/news-uk-technology/c4-model-a-better-way-to-visualise-software-architecture-df41e5ac57b8
- https://en.wikipedia.org/wiki/Domain-driven_design
- https://towardsdatascience.com/what-is-domain-driven-design-5ea1e98285e4
- https://climbtheladder.com/domain-driven-design-interview-questions/
- Managing complexity by breaking the project into smaller parts
- Bounded context, anti corruption layer (facades, adapters)
- Reposiotories, entities, value objects, services, aggregates
- Unambigous language
- Tactical patterns (Repository, Unit Of Work), Strategical Patterns (Layerer architecture, MVC...)
-
https://bdarfler.medium.com/11-best-practices-for-low-latency-systems-a00fc6e0dfda
-
https://ably.com/topic/webrtc-vs-websocket
- Non-blocking acyncronous API, strict timeouts for sync APIs
- Data structures (List vs Set)
- Reuse & memoization (https://en.wikipedia.org/wiki/Memoization)
- Picking correct technology
- In memory storage when possible
- Underutilization, batch writes,
- Profiling and performance tests
- Colocated services
-
https://www.techgeeknext.com/apache/apache-flink-interview-questions
-
https://github.com/OBenner/data-engineering-interview-questions/blob/master/content/flink.md
-
https://www.indeed.com/career-advice/interviewing/system-design-interview-questions
-
https://www.indeed.com/career-advice/interviewing/how-to-use-the-star-interview-response-technique
-
https://12factor.net/ (one codebase, explicit dependencies, config in environment, backing services as attached services, separate build->release->run, one or more stateless process, expose via port binding, scale via process model, disposability - fast startup and graceful shutdown, dev/prod parity - keep all envs alike, treat logs as event streams, admin tasks as processes with code as part of the project)
- https://microservices.io/patterns/data/saga.html
- https://www.baeldung.com/cs/saga-pattern-microservices
- https://sksonudas.medium.com/transaction-strategy-for-microservices-615f5613ff2
- https://www.baeldung.com/transactions-across-microservices
- Choreography vs Orchestrations
- Compensating transactions
- Two-phase commit (is every service ready for a commit? then do the commit)
- Saga - transaction management using a sequence of local transactions + compensating rollback transactions that must be idempotent and retryable
- https://medium.com/codex/microservices-communication-queues-topics-and-streams-597664d4b786
- queues - point to point, topic - subscriber model
- https://www.interviewbit.com/kafka-interview-questions/ (multiple brokers in a cluster coordinated by zookeeper, replication, partitioning by topic, message log with the offstet managed by the client, Kafka streams, 1MB message limit, no wildcard topic support, dumb broker-smart consumer as opposed to RabbitMQ's smart-broker and dummy consumer)
- https://www.frontendmag.com/insights/grpc-vs-websocket/
- gRPC supports several types of method invocation, including unary (request-response), server streaming, client streaming, and bidirectional streaming
- https://andrelucas.io/microservice-communication-aws-sqs-sending-messages-6babdd249d25?gi=2eaddfe82ea5
-
https://en.wikipedia.org/wiki/Service_mesh (proxy, service discovery, load balancing, observability, retry, backoff, healthcheck, distributed tracing, metrics, zero trust - Consul, Traefik)
-
https://developer.hashicorp.com/consul/docs/concepts/service-mesh
-
https://medium.com/nerd-for-tech/optimistic-vs-pessimistic-locking-strategies-b5d7f4925910
-
https://blog.allegro.tech/2020/05/hexagonal-architecture-by-example.html
-
https://www.simplilearn.com/tutorials/aws-tutorial/aws-interview-questions