[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"blog:index::AI":3},{"page":4,"tags":48},{"items":5,"meta":43},[6,21,32],{"id":7,"slug":8,"title":9,"excerpt":10,"tags":11,"read_minutes":19,"published_at":20},"bbfc5b48-c600-44a8-8eb8-eabb4b7a085a","strategic-modern-software-architecture","Strategic Modern Software Architecture","Bad software does not announce itself as a cost. It arrives as a cloud bill growing faster than the business, a portal staff quietly work around, and customer data scattered across vendors nobody has audited. This is the case for a lean stack - compiled Go services, a typed frontend, one PostgreSQL holding both records and AI embeddings, and analytics that run where the data already sits - written for the person signing for it rather than the person maintaining it.",[12,13,14,15,16,17,18],"Architecture","Go","PostgreSQL","pgvector","DuckDB","AI","Cost",14,"2026-08-30T12:00:38.146556Z",{"id":22,"slug":23,"title":24,"excerpt":25,"tags":26,"read_minutes":30,"published_at":31},"2c6ce459-fe9d-4d84-97d3-3c489e051dd5","data-engineering-for-llms-rag-pipelines","Data Engineering for LLMs: Building Production RAG Pipelines","Every organization is bolting AI onto its products; few have infrastructure to feed enterprise data into models reliably. Parsing, chunking, metadata, and vector databases — the new ETL.",[17,27,28,29],"RAG","LLM","Data Engineering",8,"2026-07-01T00:00:00Z",{"id":33,"slug":34,"title":35,"excerpt":36,"tags":37,"read_minutes":41,"published_at":42},"2617a12d-0136-43cb-a7e5-07387ef8a850","skillup-for-the-ai-age-roadmap","SkillUp for the AI Age: A Practical Roadmap","AI won't replace developers — but developers who can build with data and AI will replace those who can't. A concrete learning path that starts with fundamentals.",[38,17,39,40],"SkillUp","Careers","Learning",5,"2026-05-30T00:00:00Z",{"has_more":44,"limit":45,"next_offset":46,"offset":47,"total":46},false,24,3,0,[49,51,52,53,55,58,61,63,65,66,68,69,71,73,75,77,78,80,82,83,85,87,89,90,91,92,93,94,96,97,99,101,103],{"tag":12,"count":50},4,{"tag":17,"count":46},{"tag":29,"count":46},{"tag":54,"count":46},"dbt",{"tag":56,"count":57},"Airflow",2,{"tag":59,"count":60},"Analytics",1,{"tag":62,"count":60},"Apache Iceberg",{"tag":64,"count":60},"BigQuery",{"tag":39,"count":60},{"tag":67,"count":60},"Cloudflare R2",{"tag":18,"count":60},{"tag":70,"count":60},"Databricks",{"tag":72,"count":60},"Data Governance",{"tag":74,"count":60},"Data Lake",{"tag":76,"count":60},"Data Quality",{"tag":16,"count":60},{"tag":79,"count":60},"FinOps",{"tag":81,"count":60},"Flink",{"tag":13,"count":60},{"tag":84,"count":60},"HLS",{"tag":86,"count":60},"Kafka",{"tag":88,"count":60},"Lakehouse",{"tag":40,"count":60},{"tag":28,"count":60},{"tag":15,"count":60},{"tag":14,"count":60},{"tag":27,"count":60},{"tag":95,"count":60},"RBAC",{"tag":38,"count":60},{"tag":98,"count":60},"Snowflake",{"tag":100,"count":60},"Streaming",{"tag":102,"count":60},"Superset",{"tag":104,"count":60},"Video"]