Apiumtech Apiumtech Apiumtech Apiumtech
  • ABOUT US
    • CAREERS & TEAM
    • PARTNERS
  • SERVICES
    • WEB & MOBILE APP DEVELOPMENT
    • IT CONSULTING & TRAINING
    • SOFTWARE ARCHITECTURE
    • UX DESIGN
  • PROJECTS
  • BLOG
  • CONTACT US
Apiumtech Apiumtech
  • ABOUT US
    • CAREERS & TEAM
    • PARTNERS
  • SERVICES
    • WEB & MOBILE APP DEVELOPMENT
    • IT CONSULTING & TRAINING
    • SOFTWARE ARCHITECTURE
    • UX DESIGN
  • PROJECTS
  • BLOG
  • CONTACT US
May 19

Software Architecture in Barcelona

  • 05/19/2018
  • Xavi Hidalgo
  • Software architecture
  • Service oriented architecture, Software Architecture, software-architecture-barcelona

Software architecture is so important. In the last 15 years we have witnessed how corporations and startups of all sizes tend to neglect their software architectures. This is disastrous for the growth and development of functionalities that give value to customers. It is for this reason, that one of the great assets that we promote and make a difference is to be extremely aware of the importance of designing a good architecture.

We have helped our clients in Barcelona to define the problems that can be found in the future and how a good architectural design will make it possible for the company to respond well to the changes that the future holds.

We have evolved since our first proposal of software architecture, this time, focused on the projects we have develop in Barcelona. That’s the result:

What is Software Architecture and Why in Barcelona ?

Architecture is the foundation of any software development. We have helped many companies in Barcelona to archieve a strong system. Far from believing that there are packaged architectures, we believe that each need in each client is different and therefore, the architecture will be different. A good design will allow us to respond to the needs of scalability, security and governance in the best way.

Why is so important ?

If we start from a good definition and good decisions, we will reduce the time-to-market, we will reduce the functional errors and we will have designed an adaptable system that can respond to the change that will always happen. 

How can we design a good software architecture ?

  • Continuous Integration by default
  • Service Oriented Architecture
  • Domain driven design
  • Microservices with good patterns
  • Docker
  • SOLID principles
  • Platform scalability 
  • Devops (process automation)
  • Due diligence before the hands on
  • Incremental architecture
  • Reactive architecture
  • Enterprise Integration Patterns

Our architectures always follows the good path

The architectural vision can be understood as a macro perspective of object oriented. We have also incorporated concepts of functional programming to achieve fluid and scalable systems.

Like when we develop software, developing an architecture must follows some rules.

Here are some features of the software architectures we develop.:

Evolutive architecture

One of the big mistakes of some software architects is to think that the solutions are static and last forever. We help you to optimize your code and provide specific practice guidelines to ensure the success of the solution.

 

Scalability testing

All the software developed by our teams comes with performance tests by default. That gives us the ability to know if your product will support a high growth and what actions must be done to ensure scalability.

 

Working Architecture

Since working-software is the primary measure of success. A working architecture means an architecture that can be changed fast and supports high availability.

Working software and working architecture can be understood as two faces of the same principle, witch is:

An architecture must gives value (and feedback) from the very beginning of the development.

 

Architecture Audit

The best way to discover the state of your architecture is a first architectural audit. With this quick action to get information about the status of your code. Then we provide an audit document, describing the status, the actions and recommendations to follow to improve the system. This results, together with a list of good practices, is communicated to your team so that the changes can be applied successfully. We help you to build your system in our way.

 

Architecture documentation

We know how important architectural documentation is to communicate to the team and the rest of the organization the state and the type of architecture with which the project will be developed. For this reason, we create the architectural documentation that can be used with stakeholders, investors or to defend the project in a external due diligence.

 

Automated Pipelines

Developing systems of continuous integration and continuous delivery is something we always do. At this moment, we have internal tools to automate the creation of pipelines and this gives us the speed, security and confidence necessary to face developments of products of any size.

 

Source code quality metrics

By default, we analyze the details of the code to understand what the cost of the change is, possible defects related to the technical debt and to foresee problems related to the scalability, delivery or the product’s testeability.

 

Messaging Architectures

Microservices, Services Oriented Architectures…. All working together but how can we ensure they are [correctly] connected. Various technologies have been around that promise to solve the integration puzzle. Messaging is the technology that connect all the components and aloud an scaling architecture.

 

Do you want to improve your software architecture ? Gives a chance to explain you how and make a step forward the new level.

  • Facebook
  • Twitter
  • Pinterest
  • Google+
  • LinkedIn
  • E-Mail

About The Author

Xavi Hidalgo is a CTO at Apiumtech. He is a Software Engineer and he defines himself as an eXtreme Programmer. In the last 15 years, he played tasks related to the management of IT projects using Agile technologies. Almost all the projects he developed have had their own mobile apps and backend-api, focusing on high availability and high concurrency systems. He is an expert in TDD and CI.

Related Posts

  • Why microservices are a good idea12/18/2015

Comments are closed.

JOIN OUR NEWSLETTER

Receive our publication right in your email.

Categories

  • Agile web and app development
  • Andorra Blockchain
  • Apiumtech
  • Blockchain
  • Events
  • Jobs
  • Offshoring and outsourcing
  • Software architecture
  • Technology industry trends
  • User Experience Design
apiumtech.com Apiumtech is an agile software development company offering services of software architecture, web development, mobile app development, IT consulting, user experience design, bigdata and blockchain

LATEST NEWS

  • Free due diligence for non-profit companies
  • Talks about Open Innovation in CEOE Madrid
  • Sign documents with Blockchain
  • Interview – Ricard Gutierrez from BTC Assessors
  • DevOps developer in development team

JOIN OUR NEWSLETTER

CONTACT INFO

Carrer Pau Casals, 8
Edifici Cornellà II Planta 2 - Despatx 5
AD500 Andorra la Vella
+376 692881
info@apiumtech.com
know more about us
© 2019 APIUMTECH SLU. ALL RIGHTS RESERVED.