InfoQ Homepage Architecture & Design Content on InfoQ
-
Microservices Integration Done Right Using Contract-Driven Development
Build your microservices and micro-frontend in parallel and deploy them independently without worrying about integration issues, by leveraging API specifications such as OpenAPI and AsyncAPI as executable contracts to shift left the identification of compatibility bugs with Contract Driven Development using Specmatic, thereby removing the need for integration testing.
-
GraalVM Java Compilers Join OpenJDK in 2023, Align with OpenJDK Releases and Processes
The Community Editions of the GraalVM JIT and Ahead-of-Time (AOT) compilers will move to OpenJDK in 2023. They will align with OpenJDK releases and processes. Existing releases, GraalVM Enterprise Edition, and other GraalVM projects will not. GraalVM 22.3 provides experimental support for JDK 19 and improves observability. Project Leyden will standardize Java AOT compilation.
-
Java InfoQ Trends Report - December 2022
This report provides a summary of how the InfoQ Java editorial team and several Java Champions currently see the adoption of technology and emerging trends within the Java and JVM space in 2022. We focus on Java the language, as well as related languages like Kotlin and Scala, the Java Virtual Machine (JVM), and Java-based frameworks and utilities.
-
Moving to .NET 7 MSMQ Alternatives
No MSMQ support is available in the new versions of .NET; if it’s time to move, this article presents a few considerations on what that transition can look like. It will explore some of the available options. By the end, you should see that even though it may be tough, there is a pathway forward.
-
Going from Architect to Architecting: the Evolution of a Key Role
This article explores the cultural change of moving towards shared architecture, and the role that the architect has evolved into; from one with an air of authority and singular vision, to one in which system design issues are surfaced, which require team-wide input to resolve. Teams being coached and guided towards shared ownership might be struggling with the paradigm shift of ownership.
-
Colliding Communities, Cloud Native, and Telecommunications Standards
What happens when an ecosystem driven from the bottom up collides with a community characterized by top-down development? The 5g broadband cellular network standard by the 3rd Generation Partnership Project (3GPP), the Network Function Virtualization (NFV) standard by the European Telecommunications Standards Institute (ETSI), and the Service Function Chain RFC (request for comments) are examples.
-
What Does Technical Debt Tell You?
Technical debt is a popular metaphor for communicating the long-term implications of architectural decisions and trade-offs to stakeholders, but there are limitations to its usefulness. Incorporating quality attribute requirements, or using a different metaphor such as deferred maintenance, can help improve decision making.
-
Enabling Effective Remote Working - Principles and Patterns from Team Topologies
This article shares ideas, principles, and practices from Team Topologies (and related topics) to help organizations approach their structures' design and evolution to better support interactions in remote working. It also shares examples to showcase their impact when used to better approach organizational design, in general, and particularly to support remote working.
-
Using Serverless WebSockets to Enable Real-Time Messaging
This article reviews some of the most common live-user experiences with examples, discusses event-driven architectures to support real-time updates, and introduces common technology choices.
-
Green IoT for Energy Efficiency and Environmental Sustainability
The growth of IoT has resulted in improving connectivity amongst devices worldwide. Green IoT represents the energy efficient procedures adopted by IoT devices to achieve a sustainable and safer world. In order to green the IoT, it will be necessary to use less energy, look for new resources, reduce the negative effects of the IoT on human health, and cause less environmental disruption.
-
Polyglot Microservices Communication Using Dapr on AKS
Dapr is a useful tool for solving several challenges engineers might face. It allows engineering organizations to gain productivity by training developers on a common set of tools and techniques. It also helps adopt standardization in development, deployment, and debugging.
-
Separation of Concerns in Node.js
In Node.js you can structure your code however you want. There is no "correct way". You have the option of writing all of your code in a single app.js file or creating multiple files and placing them in different folders. Most developers, however, would recommend structuring your projects by grouping related data together rather than having it all together.