Our toolbox

Techs&Methods

Conoce todas las tecnologías y métodos de trabajo que utilizamos en Couragium.

Frontend

Tech
Angular

Framework de desarrollo para JavaScript creado por Google que utilizamos para crear y mantener aplicaciones web.

Angular.io
Tech
React

Librería Javascript de código abierto para crear interfaces de aplicaciones. Mantenida por Facebook y la comunidad de software libre.

React.org
Tech
Vue

Framework progresivo para construir interfaces de usuario. Diseñado para poder ser integrado con facilidad en cualquier proyecto.

Vue.org
Tech
Hugo

Generador de contenido estático escrito en Go. Ha ganado popularidad debido a su potencia y la cantidad de herramientas diponibles. Hemos utilizado Hugo para construir esta misma web.

GoHugo.io
Tech
Javascript

Lenguaje de programación interpretado, dialecto del estándar ECMAScript. Se define como orientado a objetos,​ basado en prototipos, imperativo, débilmente tipado y dinámico.

Javascript.com
Tech
Jest

Framework para testing en JavaScript, mantenido por Facebook y enfocado en la simplicidad. Se integra muy bien con Babel, TypeScript, Node.js, React, Angular y Vue.js. Funciona desde el primer momento y sin configuración.

JestJS.io
Tech
SASS

Metalenguaje de Hojas de Estilo en Cascada (CSS). Es un lenguaje de script que es traducido a CSS. SassScript es el lenguaje de script en sí mismo. La sintaxis más reciente, SCSS, usa el formato de bloques como CSS.

Sass-Lang.com
Tech
Web Assembly

Estándar abierto que nos permite la ejecución de código binario, compilado con lenguajes como C, C++ o Rust en la Web.

Webassembly.org
Tech
Web GL

API multiplataforma destinada a crear gráficos 3D en un navegador basada en la biblioteca de gráficos OpenGL ES 2.0

Khronos.org
Tech
QT

Framework multiplataforma orientado a objetos usado para desarrollar interfaces gráficas, herramientas para la línea de comandos y consolas para servidores que no necesitan una interfaz gráfica de usuario.

QT.io
Method
SSR

El server side rendering es una técnica por la cual se renderizan los componentes en el servidor y se proporcionan así al cliente las páginas totalmente renderizadas.

Wikipedia.io
Method
SPA

Una single-page application (SPA), es una aplicación web que cabe en una sola página con el propósito de dar una experiencia más fluida a los usuarios, como si fuera una aplicación de escritorio.

Wikipedia.org

Backend

Tech
Rust

Un lenguaje ideado para construir software fiable y robusto. Rápido, eficiente con la memoria: sin runtime ni colector de basura, inmejorable sistema de tipos, alta productividad... Simplemente nos encanta ❤️

Rust-lang.org
Tech
Node.js

Entorno en tiempo de ejecución multiplataforma, de código abierto, para servidor, basado JavaScript, asíncrono, con E/S de datos en una arquitectura orientada a eventos y basado en el motor V8 de Google.

Nodejs.org
Tech
Java

Lenguaje de programación que se ejecuta en una máquina virtual otorgándole un caracter multiplataforma. Es orientado a objetos y necesita ser precompilado a bytecode para ser ejecutado en la JVM.

Java.com
Tech
Python

Python es un lenguaje de programación interpretado, dinámico y multiplataforma, cuya filosofía es la legibilidad. Soporta orientación a objetos y, en menor medida, programación funcional.

Python.org
Tech
C++

Este lenguaje fue creado con la intención de extender el lenguaje C con herramientas para la manipulación de objetos. A día de hoy es mucho más, siendo un lenguaje multiparadigma muy rico.

CPlusPlus.com
Tech
Go

Go es un lenguaje de programación concurrente y compilado inspirado en la sintaxis de C, que intenta ser dinámico como Python y con el rendimiento de C o C++. Ha sido desarrollado por Google.

GoLang.org
Tech
Kotlin

Kotlin es un lenguaje de programación de tipado estático que corre sobre la máquina virtual de Java y que también puede ser compilado a código fuente de JavaScript. Es desarrollado principalmente por JetBrains.

KotlinLang.org
Tech
Lua

Lua es un lenguaje de programación multiparadigma, imperativo, estructurado y bastante ligero, que fue diseñado como un lenguaje interpretado con una semántica extendible. El nombre significa «luna» en portugués.

Lua.org
Tech
MySQL

Sistema de gestión de bases de datos relacional, propiedad de Oracle y desarrollado en su mayor parte en C++ y ANSI. Está considerada como la base de datos de código abierto más popular del mundo.

MySQL.com
Tech
PostgreSQL

Sistema de gestión de bases de datos relacional orientado a objetos y de código abierto, publicado bajo la licencia PostgreSQL. Preaparada para alta concurrencia y con una amplia variedad de tipos nativos.

PostgreSQL.org
Tech
MongoDB

Sistema de base de datos NoSQL, orientado a documentos y de código abierto. Guarda la información como estructuras de datos BSON con un esquema dinámico. La integración con ciertas apps es fácil y rápida.

MongoDB.com
Tech
Elasticsearch

Servidor de búsqueda basado en Lucene. Provee un motor de búsqueda de texto completo, distribuido y con capacidad de multitenencia con una interfaz web RESTful y JSON. Basado en Java y de código abierto.

Elastic.co
Tech
Redis

Motor de base de datos en memoria, basado en el almacenamiento en tablas de hashes (clave/valor) que opcionalmente puede ser usada como una BD durable o persistente. Está escrito en ANSI y de código abierto.

RedisLabs.com
Tech
RabbitMQ

Software de negociación de mensajes de código abierto que funciona como un middleware de mensajería. Implementa el estándar AMQP. Está escrito en Erlang. Ejecución distribuida y conmutación ante errores.

RabbitMQ.com
Tech
Kafka

Plataforma unificada, de alto rendimiento y de baja latencia para la manipulación en tiempo real de fuentes de datos. Cola de mensajes pub-sub, altamente escalable y con registro de transacciones distribuidas.

Kafka.Apache.org
Tech
Cloud Computing

Disponibilidad a pedido de los recursos de un sistema informático o aplicación, especialmente el almacenamiento de datos y la capacidad de cómputo, sin una gestión activa directa por parte del usuario.

Wikipedia.org

Infrastructure

Tech
Kubernetes

Sistema de código libre, diseñado por Google, para la automatización del despliegue, ajuste de escala y manejo de aplicaciones en contenedores​. Soporta varios entornos de ejecución de contenedores, incluido Docker.

Kubernetes.io
Tech
Docker

Proyecto de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores de software, proporcionando una capa adicional de abstracción y automatización de virtualización.

Docker.com
Tech
Terraform

Software de infraestructura como código desarrollado por HashiCorp. Permite definir y configurar la infraestructura en un lenguaje de alto nivel, generando un plan de de ejecución para los cloud providers.

Terraform.io
Tech
Linux

GNU/Linux es un sistema operativo de tipo Unix, multiplataforma, multiusuario y multitarea. Es la combinación de varios proyectos, entre los cuales destaca GNU.

Wikipedia.org
Tech
GCP

Plataforma que reune todas las aplicaciones de desarrollo web que Google ofrece. Utilizada para crear ciertos tipos de soluciones a través de la tecnología almacenada en la nube.

Cloud.Google.com
Tech
AWS

Plataforma de computación en la nube ofrecida por Amazon.com. Una de las ofertas internacionales más importantes de computación en la nube.

AWS.Amazon.com
Tech
Digital Ocean

Proveedor estadounidense de servidores virtuales privados y servicios cloud. Con sede principal en la ciudad de Nueva York. La compañía provee de un servicio de HPC muy potente.

DigitalOcean.com
Tech
Metal VM

Diseñada para utilizar máquinas virtuales en sistemas cloud.

Wikipedia.org
Tech
Cluster DB

Sistemas distribuidos de conjuntos de computadoras unidos entre sí normalmente por una red de alta velocidad y que se comportan como si fuesen un único servidor.

Wikipedia.org
Teh
Cache

Utilizamos sitemas de cache, tales como Redis y otros, para recuperar y servir datos con mayor rapidez en futuras peticiones dentro de los sistemas que diseñamos.

Wikipedia.org
Tech
Colas

Una cola es una estructura de datos, caracterizada por ser una secuencia de elementos en la que la operación de inserción push se realiza por un extremo y la operación de extracción pull por el otro.

Nodejs.org
Tech
Automatización

Automatizamos procesos recurrentes de forma que puedan ejecutarse mediante disparadores o controles de horario, permitiendo una ganancia significativa en la gestión de recursos.

Nodejs.org
Tech
Instrumentalización

Instrumentalizamos paneles de datos con métricas y gráficas de distintos tipos de informarción relacionadas con el estado actual de la aplicación, informacion valiosa para negocio, etc.

Wikipedia.org
Tech
ELK Stack

Estos son Elasticsearch, Kibana, Beats y Logstash (también conocido como el ELK Stack). Toma datos de cualquier fuente de manera confiable y segura. Permite tratarlos, de forma que se pueden realizar búsquedas, análisis y visualizaciones en tiempo real.

Elastic.co
Tech
Sentry

Sentry provee monitorización de errores mediante alojamiento própio de su software o como SASS mediante su servicio cloud, que ayuda a todos los equipos de desarrollo a catalogar y priorizar errores en tiempo real.

Sentry.io

Design Patterns

Design Patterns
Domain Driven Design

Enfoque para el desarrollo de software con necesidades complejas mediante una profunda conexión entre la implementación y los conceptos del modelo y núcleo del negocio.

Wikipedia.org
Design Patterns
Test Driven Development

Desarrollo guiado por pruebas de software, o Test-driven development (TDD) es una práctica de ingeniería de software que involucra otras dos prácticas: Test First Development y Refactoring.

Wikipedia.org
Design Patterns
Event Sourcing

Captura de todos los cambios de estado de una aplicación como una secuencia de eventos. Esta secuencia puede ser almacenada y reproducida para obtener el estado en un cierto momento.

MartinFowler.com
Design Patterns
Clean Architecture

En Clean Architecture los objetos encargados de la coordinación entre objetos de la capa de dominio y datos son los Use Case, también denominados Interactors.

Nodejs.org
Design Patterns
SOLID

Single responsibility, Open-closed, Liskov substitution, Interface segregation y Dependency inversion. Guías que pueden ser aplicadas en el desarrollo de software para obtener código legible y extensible.

Wikipedia.org
Design Patterns
Continuous Delivery

Enfoque de ingeniería de software en que los equipos de desarrollo producen software en ciclos cortos, asegurando que el software puede ser liberado en cualquier momento, de forma confiable.

Wikipedia.org
Design Patterns
Arquitectura Hexagonal

Es un patrón de arquitectura usado en el diseño de software. Se basa en la creación de componentes de la aplicación sin acoplamiento que pueden ser conectados a sus entornos mediante puertos y adaptadores.

Wikipedia.org
Design Patterns
Micro-Servicios

Patrón de diseño en el desarrollo de software que consiste en construir una aplicación como un conjunto de pequeños servicios, los cuales se ejecutan en su propio proceso y se comunican con mecanismos ligeros.

Wikipedia.org

Consultancy

Method
Event Storming

Es un método basado en workshop para encontrar rápidamente que está sucediendo en el dominio de un programa de software. Mediante un worksop se describen todos los procesos que forman parte de un dominio y luego se trabaja sobre ello.

Wikipedia.org
Method
Good Practices

Auditamos la implantación de buenas prácticas en el desarrollo de software en las empresas de nuestros clientes e implantamos formaciones orientadas a corregir los posibles errores.

Wikipedia.org
Method
Code/Project quality

Controlamos la calidad del código de los proyectos que acometemos para asegurar el máximo posible de calidad del código, potencia y relevancia.

Wikipedia.org
Method
Escalabilidad

Nos enfocamos en la escalabilidad para poder ofrecer aplicaciones que llegan a decenas de miles de peticiones por segundo distribuidas en clústeres de servidores.

Wikipedia.org
Method
Team Building

Ayudamos a mejorar las sinergias entre los miembros de tu equipo mediante sesiones de Team Building dirigidas. Un equipo contento es un equipo productivo.

Wikipedia.org
Method
Remote Working

Trabajamos 100% en remoto y podemos ayudar a nuestros clientes a implantar nuestras metodologías de trabajo remoto en sus equipos. Comunicación asíncrona.

Wikipedia.org
Method
Lean

Hacemos consultoría LEAN en las empresas de nuestros clientes y ofrecemos formaciones encamindas a asentar todo nuestro conocimiento en su empresa.

Wikipedia.org
Method
Agile

Trabajamos con metodologías ágiles como Scrum. LLevamos a cabo los procedimientos básicos de estas metodologías y podemos formar a su equipo en este sentido.

Wikipedia.org