Learning from the Ulabox stack
-
Upload
ruben-sospedra -
Category
Software
-
view
112 -
download
4
Transcript of Learning from the Ulabox stack
Clients: web & apps
CLIENTSweb & apps
Stack• PHP 7 with Symfony 2 • Twig templates with jQuery • PWA
• Android and Objective-C• WIP: Pods-based React Native
Issues• Wait too much for responsibility
segregation • High availability
Tips• Fix perf issues when you face them • The bottleneck is not the keyboard • Have a single source of truth
Machinery: systems & devops
Machinerysystems & devops
Stack• Hetzner hosted baremetals • Solr & Redis for web • MariaDB for web • PostgreSQL for microservices • Jenkins for pipelines • RabbitMQ and Rundeck for intercom • Docker for dev environment and staging
Issues• Systems management and responsibility
Tips• Follow a single and unique devops
protocol • Invest time into coding instead of
machinery administration
Business: office & integrations
BUSINESSoffice & integrations
Stack• PHP 7 with Symfony 2 • Swagger for the API • Multiple 3rd parties: Datadog, Kibana, et
al.
• Business integrations: Sengrid, Selligent, AECOC, et al.
Issues• Other offices will became IT dependants • Never trust 3rd party APIs
Tips• When working with 3rd party software
use defensive programming • Learn to handle internal expectations
Chango: warehouses
CHANGOwarehouses
Stack• CQRS and ES architecture • PHP 7 with Symfony 2
• Angular webapp
Issues• Not having clear business logics before
coding • Messages versioning
Tips• Never compromise for a date • Be brave, embrace the changes • Have the developers and stakeholders
close to each other
Trucks: routes & delivery
TRUCKSroutes & delivery
Stack• DDD and Hexagonal architecture • Android app with Angular and Ionic
• WIP: Routes are gonna be in-house
Issues• Not knowing the device our technology
will run on • Unclear usability pathways
Tips• Worship the user persona • Solve one problem at a time, then iterate