<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Marko Crnjanski, Author at ShiftMag</title>
	<atom:link href="https://shiftmag.dev/author/markocrnjanski/feed/" rel="self" type="application/rss+xml" />
	<link>https://shiftmag.dev/author/markocrnjanski/</link>
	<description>Insightful engineering content &#38; community</description>
	<lastBuildDate>Thu, 20 Aug 2026 13:28:26 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.3</generator>

<image>
	<url>https://shiftmag.dev/wp-content/uploads/2024/08/cropped-ShiftMag-favicon-32x32.png</url>
	<title>Marko Crnjanski, Author at ShiftMag</title>
	<link>https://shiftmag.dev/author/markocrnjanski/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>AI Is Only as Good as the Document Pipeline Behind It</title>
		<link>https://shiftmag.dev/ai-is-only-as-good-as-the-document-pipeline-behind-it-11538/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Thu, 20 Aug 2026 13:28:26 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Apryse]]></category>
		<category><![CDATA[Data Pipelines]]></category>
		<category><![CDATA[Document Processing]]></category>
		<category><![CDATA[LLM]]></category>
		<category><![CDATA[OCR]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=11538</guid>

					<description><![CDATA[<p>Everyone is busy asking how big the model is, but the real question is what you fed it first - because if your PDFs are mangled and your OCR is sloppy, even the smartest LLM starts from the wrong answer.</p>
<p>The post <a href="https://shiftmag.dev/ai-is-only-as-good-as-the-document-pipeline-behind-it-11538/">AI Is Only as Good as the Document Pipeline Behind It</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">At the WeAreDevelopers World Congress 2026 in Berlin, I spoke with <strong>Luca Mancinelli (Solutions Engineer, Apryse)</strong>, about a part of the AI stack that tends to receive far less attention than models themselves:<strong> </strong>the document pipeline.</p>



<p class="wp-block-paragraph">As companies move more of their knowledge into AI applications, PDFs, scans, reports, and invoices are becoming key data sources. The real challenge is <strong>preserving enough structure and context</strong> for AI systems to understand them properly.</p>



<h1 class="wp-block-heading"><span id="document-extraction-is-becoming-key-in-ai-applications">Document extraction is becoming key in AI applications</span></h1>



<p class="wp-block-paragraph">For much of the history of enterprise software, documents typically sat at the end of a process. An application generated a report, invoice, or contract, and the PDF was the finished product. Mancinelli believes AI is changing that relationship:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Documents used to be the output &#8211; for example, a PDF you’d print or send out. Now they’re also a structured input that powers AI systems.</p>
</blockquote>



<p class="wp-block-paragraph">More precisely, the challenge for developers is turning documents that are often unstructured or semi-structured into <strong>structured information that downstream systems can use</strong>.</p>



<p class="wp-block-paragraph">An LLM can ingest raw text, but simply extracting characters from a file does not always preserve what makes the original document meaningful. A heading has a different role from a paragraph. A value in a table depends on its row and column. A number beside “Total” means something different from the same number appearing somewhere else on the page.</p>



<p class="wp-block-paragraph">That is why document extraction is becoming an important preprocessing layer in AI applications. The goal is not just to recover text, but to give models cleaner, better-organized context.</p>



<h1 class="wp-block-heading"><span id="bad-pdf-parsing-can-lose-information-that-even-a-stronger-model-cannot-recover">Bad PDF parsing can lose information that even a stronger model cannot recover</span></h1>



<p class="wp-block-paragraph">Anyone who has tried to build a production pipeline around real-world PDFs quickly discovers that <strong>documents are far less predictable than API responses or database records</strong>. Mancinelli points to three recurring problems:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">First are complex layouts: you can have headers, tables, and different formats in the same document, and that creates a huge challenge for systems. Second is poor OCR, which can produce messy output. Third is the loss of context.</p>
</blockquote>



<p class="wp-block-paragraph">This distinction becomes especially important with RAG systems and other LLM-powered applications. If a document is badly parsed before it reaches a model, a more powerful model cannot necessarily recover information that was lost earlier in the pipeline.</p>



<p class="wp-block-paragraph">For developers, that means<strong> data quality becomes an architectural issue </strong>rather than simply an AI-model issue.</p>



<h1 class="wp-block-heading"><span id="document-processing-depends-on-the-use-case">Document processing depends on the use case</span></h1>



<p class="wp-block-paragraph">Where document processing happens is another architectural decision that becomes more important as AI moves into regulated and data-sensitive environments.</p>



<p class="wp-block-paragraph">Mancinelli argues against treating cloud and self-hosted processing as an either-or decision. <strong>The right model depends on the application, its infrastructure, and the type of data involved</strong>.</p>



<p class="wp-block-paragraph">For organizations working with particularly sensitive documents, processing files within their own environment can reduce the amount of data that has to move outside their infrastructure. Cloud services, meanwhile, can lower the infrastructure burden and make experimentation easier in some projects.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">It&#8217;s not one or the other; each solution has its own merit. It depends on the use case.</p>
</blockquote>



<p class="wp-block-paragraph">That may sound obvious, but it becomes a meaningful engineering trade-off once document pipelines start handling contracts, financial records, healthcare documents, or other sensitive enterprise information. Privacy requirements, latency, scalability, and operational complexity <strong>all have to be considered alongside extraction accuracy</strong>.</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe title="Why Documents Are the NEW AI Data Layer" width="500" height="281" src="https://www.youtube.com/embed/NKAbUc5s_BU?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<h1 class="wp-block-heading"><span id="a-powerful-sdk-is-useless-if-developers-struggle-to-integrate-it">A powerful SDK is useless if developers struggle to integrate it</span></h1>



<p class="wp-block-paragraph">There is also a more familiar developer problem: integration. No matter how sophisticated a document-processing engine is, developers eventually have to put it into a real application, maintain it, and debug it.</p>



<p class="wp-block-paragraph">For Mancinelli, good documentation is therefore <strong>one of the most important characteristics of a production-ready SDK</strong>. Practical examples matter as well: developers should be able to see realistic implementations and adapt them instead of building every integration from scratch.</p>



<p class="wp-block-paragraph">He also points to higher-level APIs as a way of reducing unnecessary implementation complexity:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">The point is particularly relevant as AI infrastructure becomes more fragmented. Developers already have to connect models, vector databases, data sources, evaluation systems, observability tools, and application logic. Adding another complicated layer to the stack can quickly increase both development and maintenance costs.</p>
</blockquote>



<p class="wp-block-paragraph">A useful document SDK therefore has to solve two problems at once: the difficult underlying document-processing problem and the developer-experience problem surrounding it.</p>



<h1 class="wp-block-heading"><span id="data-pipelines-will-become-increasingly-important">Data pipelines will become increasingly important </span></h1>



<p class="wp-block-paragraph">Predicting what software development will look like several years from now is difficult, and Mancinelli avoids picking a single technology that will dominate.</p>



<p class="wp-block-paragraph">Instead, he expects data pipelines to become increasingly important as companies process larger and more complex collections of information.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">One thing is sure: the complexity of the data is going to increase, and the amount of data is going to increase as well. That means data management pipelines will become even more critical.</p>
</blockquote>



<p class="wp-block-paragraph">For developers working with AI, that may be the more practical takeaway.</p>



<p class="wp-block-paragraph">&#8220;The industry tends to focus heavily on what happens inside the model: larger context windows, new reasoning capabilities, faster inference, and increasingly capable agents. But production AI systems also depend on everything that happens before a prompt reaches the model&#8221;, Mancinelli said.</p>



<p class="wp-block-paragraph">If the input is incomplete, badly extracted, or stripped of its structure, <strong>even an advanced LLM starts from a disadvantage</strong>.</p>



<p class="wp-block-paragraph">As enterprise AI matures, document processing may become less a peripheral PDF problem&nbsp;and more&nbsp;<strong>a core part of the AI data stack</strong>, one where developers have to think carefully about structure, privacy, deployment, and, above all, context.</p>


<figure class="wp-block-post-featured-image"><img fetchpriority="high" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/08/luca_1_.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/08/luca_1_.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/08/luca_1_-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/08/luca_1_-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/08/luca_1_-768x403.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" /></figure><p>The post <a href="https://shiftmag.dev/ai-is-only-as-good-as-the-document-pipeline-behind-it-11538/">AI Is Only as Good as the Document Pipeline Behind It</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Choose a Database Because It Fits the Workload, Not Because It’s Familiar</title>
		<link>https://shiftmag.dev/choose-a-database-because-it-fits-the-workload-not-because-its-familiar-11185/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Mon, 03 Aug 2026 13:47:02 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Aerospike]]></category>
		<category><![CDATA[AI Infrastructure]]></category>
		<category><![CDATA[Database Architecture]]></category>
		<category><![CDATA[NoSQL Databases]]></category>
		<category><![CDATA[P99 Latency]]></category>
		<category><![CDATA[Zohar Elkayam]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=11185</guid>

					<description><![CDATA[<p>The fastest way to create technical debt in AI is still the oldest one: choosing a database because it feels comfortable.</p>
<p>The post <a href="https://shiftmag.dev/choose-a-database-because-it-fits-the-workload-not-because-its-familiar-11185/">Choose a Database Because It Fits the Workload, Not Because It’s Familiar</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">At the WeAreDevelopers Conference in Berlin, I met with <strong>Zohar Elkayam</strong> (Principal Solutions Architect, Aerospike) to talk about one of the most common mistakes engineering teams still make: <strong>choosing a database because it’s familiar</strong>, instead of choosing it for the actual problem they need to solve. </p>



<p class="wp-block-paragraph">It sounds like a small decision at first, but as Zohar explains, it can become a costly one later when teams have to deal with scale, reliability, latency, and re-architecture. </p>



<p class="wp-block-paragraph">We also discussed what changes when you <strong>build for real-time AI workloads</strong>, and why predictable performance matters far more than averages when your users expect speed every time.</p>



<h2 class="wp-block-heading"><span id="when-teams-pick-a-database-today-what-do-they-most-often-get-wrong">When teams pick a database today, what do they most often get wrong?</span></h2>



<p class="wp-block-paragraph"><strong>Zohar</strong>: Most people start by thinking about the databases they already know and have used in previous roles, rather than what they actually need for the specific use case in front of them.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">As a result, we often see customers choose<strong> </strong>something familiar instead of evaluating variables such as latency, speed, scale, reliability, and consistency, and selecting the right solution for their particular problem.</p>
</blockquote>



<p class="wp-block-paragraph">That becomes a major issue when they later have to revisit their decision and re-architect or refactor the solution. It can be time-consuming, costly, and extremely difficult.</p>



<h2 class="wp-block-heading"><span id="as-ai-apps-get-more-real-time-and-data-heavy-how-should-developers-and-ctos-rethink-database-architecture">As AI apps get more real-time and data-heavy, how should developers and CTOs rethink database architecture?</span></h2>



<p class="wp-block-paragraph"><strong>Zohar</strong>: Traditional web applications focused on human interaction and often relied on caches and in-memory data. When we talk about real-time systems and AI, however, we are talking about high-throughput, low-latency workloads that <strong>consume large amounts of data and need it immediately</strong>.</p>



<p class="wp-block-paragraph">Because of this, teams sometimes use solutions that no longer fit their needs. They require systems that are reliable, predictable, fast, and scalable, which is something we see all the time. Aerospike was built for exactly that use case: real-time workloads, low latency, predictability, and high throughput.</p>



<p class="wp-block-paragraph">From my perspective, when CTOs evaluate this kind of solution, they need to think about the future. <strong>They should consider what they need today, but also where the product and its infrastructure will need to be at the next stage</strong>. That is especially important for AI applications and real-time applications in general.</p>



<h2 class="wp-block-heading"><span id="many-teams-are-adding-vector-search-graph-databases-and-real-time-pipelines-to-their-stack-when-is-that-the-right-choice">Many teams are adding vector search, graph databases, and real-time pipelines to their stack. When is that the right choice?</span></h2>



<p class="wp-block-paragraph"><strong>Zohar</strong>: When many customers think about AI, their first reaction is: &#8216;This is what my competitor is doing, so I need to do it too. Sometimes, when we examine the use case, we find it provides no real value. Teams choose to do it simply because everyone else is doing it.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">These solutions shine when they provide a competitive advantage, and AI can be integrated into the system in a way that creates long-term value. If you integrate a graph database or vector-search solution simply because someone else is doing it, you are going to have a very difficult time.</p>
</blockquote>



<p class="wp-block-paragraph">From that point onward, everything you do can become a technological hurdle, which is exactly where you do not want to be. You need to <strong>focus on what will create the most value</strong>. If AI is one of those things, go for it. If it is not, you should probably consider other solutions.</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe title="Zohar Elkayam on Building AI Systems That Scale" width="500" height="281" src="https://www.youtube.com/embed/ba070p2lzBo?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<h2 class="wp-block-heading"><span id="what-should-engineering-teams-measure-if-they-really-want-to-understand-database-performance-at-scale">What should engineering teams measure if they really want to understand database performance at scale?</span></h2>



<p class="wp-block-paragraph"><strong>Zohar</strong>: When it comes to database performance, predictability is the number-one factor. It should be the industry standard for anything involving low latency and high throughput.</p>



<p class="wp-block-paragraph"><strong>Focusing on the average can put you in a dangerous position</strong>. Think of a swimming pool with an average depth of 30 centimeters: you can still drown in the deep end.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">You need to think differently about performance. Focus on predictability and metrics such as P99 or even P99.9. Measure them at the application level, the database level, and across the overall user experience, because that is what will make your life easier later. </p>
</blockquote>



<p class="wp-block-paragraph">If you measure only the average, 50 percent of your users will experience latency worse than that figure. If you measure P99, the 99th percentile, only 1 percent of users will experience worse latency.</p>



<p class="wp-block-paragraph">A long performance tail can be highly problematic for some use cases. Our main focus is providing long-term predictability at the high end, including P99.9 and beyond.</p>



<p class="wp-block-paragraph">That predictability cannot depend on memory or caches. It needs to hold when reading from disk, NVMe, or other storage, without relying on prior activity, cache hits, or warming data into memory.</p>



<h2 class="wp-block-heading"><span id="what-do-teams-give-up-or-gain-when-they-move-fast-with-managed-tools-versus-building-something-custom">What do teams give up or gain when they move fast with managed tools versus building something custom?</span></h2>



<p class="wp-block-paragraph"><strong>Zohar</strong>: If you are a startup building a proof of concept or just getting started, using off-the-shelf tools is perfectly fine. Over the long term, however, those tools can impose strict limitations. They can be expensive, slow, or unreliable, and they may change without your consent or even your knowledge. They can help you build quickly and get to market fast. </p>



<p class="wp-block-paragraph">But once you reach a more established stage, you need to find a different way to handle things.</p>



<p class="wp-block-paragraph">That may mean <strong>building your own solutions, adopting a data platform, and unifying your stack</strong>. You look for ways to differentiate your product from competitors and make it more scalable, faster, and more valuable.</p>



<p class="wp-block-paragraph">It all comes down to value. If your solution provides something no one else can, and that differentiation comes from a different architecture or infrastructure, then it makes sense.</p>



<p class="wp-block-paragraph">Ultimately, it is not one approach or the other. You need to combine them: use common tools to solve common problems, while applying the right technologies to the uncommon, differentiating parts of each use case.</p>



<h2 class="wp-block-heading"><span id="what-database-and-infrastructure-skills-should-software-engineers-focus-on-to-stay-relevant-as-ai-changes-development">What database and infrastructure skills should software engineers focus on to stay relevant as AI changes development?</span></h2>



<p class="wp-block-paragraph"><strong>Zohar</strong>: I think <strong>AI is a major accelerator for developers, SREs, and DevOps teams</strong>, dramatically speeding up their work. Even so, people need to stay mindful and continue developing deep expertise in their field when working with AI.</p>



<p class="wp-block-paragraph">It is like generating an image with AI. You enter a prompt and get a result, but it may not be exactly what you wanted or imagined. To the human eye, the problem is often immediately obvious: the image may show six fingers, strange features, or something else you did not expect. The same applies when you are writing code or analyzing logs. </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">You need enough expertise to evaluate the response critically. You have to ask why: Why did the AI give me that answer? Where did it come from? What did I learn, and how can I improve my solution?</p>
</blockquote>



<p class="wp-block-paragraph"><strong>Instead of using AI only to generate and build things,</strong> <strong>use it to learn</strong>. You can still use it to generate code or solve problems, but you need to be able to read the output, understand it, and guide the AI so that it produces results that make sense for you.</p>



<p class="wp-block-paragraph">When you build an agentic system, use multiple agents, and pass outputs from one to another, you can sometimes lose that visibility. But if you preserve it over the long term, CTOs, developers, newcomers, and junior engineers can go very far, provided they understand what is actually happening.</p>



<p class="wp-block-paragraph">From my perspective, <strong>AI is where the industry is heading</strong>. I use it every day and across many parts of my work, but I always remain critical. I plan before I act. It is not about wasting tokens; it is about creating value through my work.</p>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/07/zohar_1.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/07/zohar_1.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/07/zohar_1-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/07/zohar_1-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/07/zohar_1-768x403.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure><p>The post <a href="https://shiftmag.dev/choose-a-database-because-it-fits-the-workload-not-because-its-familiar-11185/">Choose a Database Because It Fits the Workload, Not Because It’s Familiar</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>The Real Source of Truth Is No Longer Code &#8211; It’s the Specifications</title>
		<link>https://shiftmag.dev/the-real-source-of-truth-is-no-longer-code-its-the-specifications-10863/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Wed, 22 Jul 2026 14:23:31 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[AI-generated code]]></category>
		<category><![CDATA[Codeplain]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[software developer career]]></category>
		<category><![CDATA[spec-driven development]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=10863</guid>

					<description><![CDATA[<p>AI can write the code. The harder question is whether anyone still understands what it was supposed to do six months later.</p>
<p>The post <a href="https://shiftmag.dev/the-real-source-of-truth-is-no-longer-code-its-the-specifications-10863/">The Real Source of Truth Is No Longer Code &#8211; It’s the Specifications</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><strong>Spec-driven development</strong> aims to change that: the source of truth is no longer the code itself, but a clearly defined intent that the code can be regenerated from, tested against, and maintained with.</p>



<p class="wp-block-paragraph">At WeAreDevelopers in Berlin, I spoke with <strong>Predrag Radenkovic</strong>, CTO at Codeplain, about why some developers are skeptical of &#8220;review the spec, not the code&#8221; &#8211; and where this approach works today, and where teams still need to be careful.</p>



<h2 class="wp-block-heading"><span id="what-is-the-main-shift-from-prompt-driven-coding-to-spec-driven-development">What is the main shift from prompt-driven coding to spec-driven development?</span></h2>



<p class="wp-block-paragraph"><strong>Predrag</strong>: Prompt-driven coding operates at the level of code. Every decision an engineer makes gets translated directly into the implementation. All the maintenance happens on the level of code, where the intent behind the original solution is no longer available to the coding agent.</p>



<p class="wp-block-paragraph">Spec-driven development raises the level of abstraction. <strong>You treat the spec as the only source of truth</strong>: you define the necessary detail in natural language, and the system is built and validated from that. The intent persists in a simpler, more readable form. So you&#8217;re maintaining specs instead of code, and regenerating the code from them.</p>



<p class="wp-block-paragraph"><strong>Agentic skills</strong> are what make that workable in practice. Developers don&#8217;t want to write specs from scratch, but they&#8217;re happy to read them, so the agent drafts the spec incrementally, and the developer reviews and shapes it.</p>



<h2 class="wp-block-heading"><span id="why-are-integrations-a-good-fit-for-ai-assisted-development-and-where-does-direct-llm-based-code-generation-usually-break-down">Why are integrations a good fit for AI-assisted development, and where does direct LLM-based code generation usually break down?</span></h2>



<p class="wp-block-paragraph"><strong>Predrag</strong>: With integration development, you&#8217;re essentially becoming an<strong> expert on third-party systems</strong> <strong>that LLMs already know better than any human</strong>. Agents are strong at researching the domain, understanding the APIs, checking implementations against the current documentation.</p>



<p class="wp-block-paragraph">Where classic AI-assisted development falls short is <strong>maintenance</strong>. Integrations break in production all the time, and once you have a large number of them, you’re constantly patching code against systems you don’t control.</p>



<p class="wp-block-paragraph">With spec-driven development, <strong>the intent lives in the spec</strong>. So, when a third-party system changes and breaks an integration, the fix is usually a very small edit to the spec, and then you regenerate the code from it.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="592" src="https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_1-1024x592.png?x32039" alt="" class="wp-image-10874" srcset="https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_1-1024x592.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_1-300x174.png 300w, https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_1-768x444.png 768w, https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_1.png 1089w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Photo: <a href="https://www.codeplain.ai/" target="_blank" rel="noreferrer noopener">Codeplai.ai</a></figcaption></figure>



<h2 class="wp-block-heading"><span id="codeplain-treats-reusable-specifications-as-the-source-of-truth-what-makes-a-good-spec-and-what-do-developers-often-get-wrong-when-writing-one">Codeplain treats reusable specifications as the source of truth. What makes a good spec, and what do developers often get wrong when writing one?</span></h2>



<p class="wp-block-paragraph"><strong>Predrag</strong>: Good specs are <strong>complete, precise, unambiguous, and free of conflicting requirements</strong>. Also, their functionality is split into smaller chunks of reasonable complexity. Free-form specs aren&#8217;t ideal because the agent has to process everything at once and validating the requirements gets hard. Structuring the spec into units is what makes it both readable and checkable.</p>



<p class="wp-block-paragraph">That&#8217;s why we built the ***plain language. It lets engineers express intent precisely and keep full control over the functionality that gets implemented from it.</p>



<p class="wp-block-paragraph">What we&#8217;ve noticed over 2.5 years of working on spec-driven development is that <strong>engineers aren&#8217;t especially good at writing precise specs, but AI agents are</strong>. And the other way around: engineers are willing to review a spec thoroughly. That’s the reason why we built agentic skills for writing and validating specs.</p>



<h2 class="wp-block-heading"><span id="if-implementations-can-be-checked-against-the-specification-how-does-that-change-testing-code-review-and-trust-in-ai-generated-code">If implementations can be checked against the specification, how does that change testing, code review, and trust in AI-generated code?</span></h2>



<p class="wp-block-paragraph"><strong>Predrag</strong>: The first premise of the SDD lifecycle is that <strong>engineers thoroughly review the specs</strong>. Once the specs are accurate, much of the work is done. Codeplain&#8217;s code generator then builds the code and, more importantly, validates that it conforms to the specs.</p>



<p class="wp-block-paragraph">We do this through black-box tests written entirely from the specifications and executed against the code that was built. In the end, it&#8217;s up to the engineer to do manual testing and, if they want, to check all the test scenarios our platform created.</p>



<h2 class="wp-block-heading"><span id="from-your-experience-scaling-integrations-what-was-the-biggest-technical-lesson-about-using-structured-specs-instead-of-direct-code-generation">From your experience scaling integrations, what was the biggest technical lesson about using structured specs instead of direct code generation?</span></h2>



<p class="wp-block-paragraph"><strong>Predrag</strong>: When you develop integrations, you become an expert in someone else&#8217;s system without creating any additional value compared to your competitors. And it gets harder as the volume of integrations grows. The biggest issue, though, is maintaining them, because<strong> around 5% of integrations break each month due to changes in systems you can&#8217;t control</strong>.</p>



<p class="wp-block-paragraph">Coding agents are already great at researching and understanding external systems, and we use them to help us write the proper specifications. Once an integration is fully defined in a spec, it&#8217;s easier and faster to maintain, because the review cycle boils down to changes in the specs and the rest is automated.</p>



<h2 class="wp-block-heading">Some developers are skeptical of ideas like &#8220;review the spec, not the code&#8221;. Where does this approach work today, and where should teams still be careful?</h2>



<p class="wp-block-paragraph"><strong>Predrag</strong>: We picked integrations as the beachhead for our platform with exactly this question in mind. <strong>The approach works best where the implementation can be validated completely</strong>, where you can check the behavior against the spec without a human in the loop. Integrations fit that well, and we&#8217;ve seen the same hold in a couple of other verticals: scraper development and ETLs.</p>



<p class="wp-block-paragraph">Where teams should be careful is anywhere full validation isn&#8217;t possible. Anything with a user interface, for example, can&#8217;t be checked the same way today. But we see a solution on the horizon. The technology just needs to mature, and it&#8217;s moving quickly.</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="How CodePlane Validates Third-Party APIs with Spec-Driven Agents" width="500" height="281" src="https://www.youtube.com/embed/kWg7s3JKkag?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_main.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_main.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_main-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_main-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/07/codeplain_main-768x403.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure><p>The post <a href="https://shiftmag.dev/the-real-source-of-truth-is-no-longer-code-its-the-specifications-10863/">The Real Source of Truth Is No Longer Code &#8211; It’s the Specifications</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>AI Helps Ship Faster, But It Doesn’t Do the Thinking</title>
		<link>https://shiftmag.dev/ai-helps-ship-faster-but-it-doesnt-do-the-thinking-10555/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Wed, 08 Jul 2026 13:33:35 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[AI coding]]></category>
		<category><![CDATA[code review]]></category>
		<category><![CDATA[developer tools]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[technical debt]]></category>
		<category><![CDATA[vibe coding]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=10555</guid>

					<description><![CDATA[<p>We asked engineers how far AI can really go in software delivery, and their answer was simple: it can speed things up, but people still have to make the decisions.</p>
<p>The post <a href="https://shiftmag.dev/ai-helps-ship-faster-but-it-doesnt-do-the-thinking-10555/">AI Helps Ship Faster, But It Doesn’t Do the Thinking</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">AI coding assistants have made it look dangerously easy to believe software can now be built by prompt alone. </p>



<p class="wp-block-paragraph">In a recent conversation with a few Infobip engineers, we asked whether that promise holds up in practice &#8211; and the answer was clear: <strong>AI can generate code fast, but it still cannot understand the problem</strong>, define the boundaries, or own the consequences. </p>



<p class="wp-block-paragraph">That part remains the developer’s job.</p>



<h2 class="wp-block-heading"><span id="ai-should-be-a-tool-for-accelerating-clearly-defined-tasks">AI should be a tool for accelerating clearly defined tasks</span></h2>



<p class="wp-block-paragraph">Better context and clearer specifications make useful, maintainable, and secure output far more likely. As <strong>Zvonimir Petković</strong>, Staff Engineer, explained:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">The quality of the code ultimately depends on the context given to the GenAI agent and the model underneath. The software engineer is still the one writing the specifications, and the better the specification and context, the better the code produced.</p>
</blockquote>



<p class="wp-block-paragraph">To maintain quality, he says, we need to isolate the code into smaller segments and check each one. Effective work with coding agents is <strong>less about one large prompt and more about small, controlled iterations</strong>.</p>



<p class="wp-block-paragraph">That may mean changing the architecture, refactoring a component, or requesting a more precise implementation of a single interface. <strong>František Lučivjanský</strong>, Senior Principal Engineer, described a similar workflow:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">I work with AI in smaller chunks. I give it a small part, review the result, and steer the agent: &#8220;This is not correct; do it this way.&#8221; I may also define the architecture differently &#8211; for example, by asking it to refactor one part first. These slow iterations help me maintain the same quality I would achieve manually.</p>
</blockquote>



<p class="wp-block-paragraph">Working in smaller chunks helps developers preserve a mental model of the system and review decisions while the code is still easy to change. AI serves as a tool for accelerating clearly defined tasks.</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="Why Great AI Code Still Needs Real Engineering" width="500" height="281" src="https://www.youtube.com/embed/wxWxsWqxZvI?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<h2 class="wp-block-heading">AI doesn&#8217;t create technical debt, people do</h2>



<p class="wp-block-paragraph">Faster code generation naturally raises questions about technical debt. Teams have more code to understand, test, and maintain, but AI did not create technical debt. <strong>Debt grows from deadlines, trade-offs, and decisions that prioritize short-term delivery over long-term maintainability</strong>.</p>



<p class="wp-block-paragraph">For <strong>Tvrtko Ivasić</strong>, Application Security Intern, the answer is not to relax established controls, but to reinforce them:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">We should preserve the standards established in the past: the security pillars, the SDLC pipeline, code review, SAST, and the rest of the process. If anything, the bar should be even higher because the code is now generated by AI rather than written by an engineer.</p>
</blockquote>



<p class="wp-block-paragraph">AI-generated code should go through the same SDLC as human-written code: code review, automated tests, SAST, and dependency checks. </p>



<p class="wp-block-paragraph">František Lučivjanský notes that agents don’t remove the pressures behind technical debt, but <strong>they can help manage it more deliberately</strong>. They can also spot duplication, suggest refactors, write tests, or explain legacy code, but the value still depends on the engineer reviewing the output.</p>



<h2 class="wp-block-heading"><span id="vibe-coding-might-evolve-into-agent-engineering">Vibe coding might evolve into agent engineering</span></h2>



<p class="wp-block-paragraph">Vibe coding may be enough for a hobby project or proof of concept, but problems begin when the same workflow reaches production without additional controls. Engineers may not need to write or memorize every line, but they still <strong>need to understand the architecture, system boundaries, scalability, and failure modes</strong>, enough to delegate implementation without delegating responsibility.</p>



<p class="wp-block-paragraph">Asked whether vibe coding is a sustainable approach to software development or merely a short-term productivity boost, Zvonimir argued that it is likely to evolve:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Vibe coding is not just a short-term boost or a passing trend. &#8220;Dark factories&#8221; may represent the ultimate direction, with workflows that incorporate vibe coding and require us to look at the code less and less. I think it will evolve into agent engineering, and that is how software will be built in the future.</p>
</blockquote>



<p class="wp-block-paragraph">Companies that adopt this workflow may ship faster without sacrificing quality, spending less time on routine code and more on specifications, architecture, evaluation, and automated controls. The key is to understand where vibe coding creates speed, where it introduces risk, and how AI agents fit into proven software engineering principles &#8211; because <strong>responsibility for what reaches production remains unchanged</strong>.</p>



<p class="wp-block-paragraph"><em>Special thanks to our engineering colleagues from <a href="https://www.infobip.com/" target="_blank" rel="noreferrer noopener">Infobip</a>, the publisher of ShiftMag!</em></p>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1280" height="720" src="https://shiftmag.dev/wp-content/uploads/2026/06/2_2.jpg?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/06/2_2.jpg 1280w, https://shiftmag.dev/wp-content/uploads/2026/06/2_2-300x169.jpg 300w, https://shiftmag.dev/wp-content/uploads/2026/06/2_2-1024x576.jpg 1024w, https://shiftmag.dev/wp-content/uploads/2026/06/2_2-768x432.jpg 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" /></figure><p>The post <a href="https://shiftmag.dev/ai-helps-ship-faster-but-it-doesnt-do-the-thinking-10555/">AI Helps Ship Faster, But It Doesn’t Do the Thinking</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Let&#8217;s Take A Look Inside Adobe&#8217;s Complete Career Ladder</title>
		<link>https://shiftmag.dev/lets-take-a-look-inside-adobes-complete-career-ladder-9464/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Mon, 25 May 2026 13:22:14 +0000</pubDate>
				<category><![CDATA[Career]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[career]]></category>
		<category><![CDATA[career ladder]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Software Engineer]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=9464</guid>

					<description><![CDATA[<p>Adobe doesn't publish its engineering career ladder, but we've gathered the data to give you a clear picture.</p>
<p>The post <a href="https://shiftmag.dev/lets-take-a-look-inside-adobes-complete-career-ladder-9464/">Let&#8217;s Take A Look Inside Adobe&#8217;s Complete Career Ladder</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">We pulled data from job postings, <a href="https://www.levels.fyi/en-gb/companies/adobe/salaries" target="_blank" rel="noreferrer noopener">Levels.fyi</a>, <a href="https://www.glassdoor.com/Salary/Adobe-Salaries-E1090.htm?utm_source=chatgpt.com" target="_blank" rel="noreferrer noopener">Glassdoor</a>, and <a href="https://www.teamblind.com/post/adobe-p50-scope-jpemyuvz?utm_source=chatgpt.com" target="_blank" rel="noreferrer noopener">Blind</a>. </p>



<p class="wp-block-paragraph">Put together, they form a consistent picture &#8211; not an official ladder, but a very real one that shows how engineers grow, gain influence, and move from writing code to shaping entire systems.</p>



<h2 class="wp-block-heading"><span id="compensation-reveals-the-real-hierarchy">Compensation reveals the real hierarchy</span></h2>



<p class="wp-block-paragraph">At its core, Adobe uses a <strong>P-level system (Professional levels)</strong> that maps engineering growth from entry-level roles to company-wide technical leadership.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="462" src="https://shiftmag.dev/wp-content/uploads/2026/04/adobe_1-1024x462.png?x32039" alt="" class="wp-image-9519" srcset="https://shiftmag.dev/wp-content/uploads/2026/04/adobe_1-1024x462.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/04/adobe_1-300x135.png 300w, https://shiftmag.dev/wp-content/uploads/2026/04/adobe_1-768x347.png 768w, https://shiftmag.dev/wp-content/uploads/2026/04/adobe_1.png 1143w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Adobe <strong>doesn&#8217;t hand out impressive titles quickly</strong>. But behind the modest titles, what&#8217;s actually expected of you keeps growing at every level. The ladder looks flat from the outside. From the inside, the gap between levels is real.</p>



<p class="wp-block-paragraph">If titles are understated, compensation isn’t: across multiple sources, total compensation for software engineers at Adobe ranges <strong>from roughly $150K </strong>at the entry level<strong> to well above $500K</strong> at the top of the individual contributor track.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="475" src="https://shiftmag.dev/wp-content/uploads/2026/04/adobe_2-1024x475.png?x32039" alt="" class="wp-image-9520" srcset="https://shiftmag.dev/wp-content/uploads/2026/04/adobe_2-1024x475.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/04/adobe_2-300x139.png 300w, https://shiftmag.dev/wp-content/uploads/2026/04/adobe_2-768x357.png 768w, https://shiftmag.dev/wp-content/uploads/2026/04/adobe_2.png 1133w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">The numbers matter, but so does the curve. Pay grows steadily through early and mid-level roles and then <strong>jumps sharply after senior</strong>. That&#8217;s where Adobe starts paying for influence, not just output.</p>



<h2 class="wp-block-heading"><span id="senior-level-where-leverage-begins">Senior level: where leverage begins</span></h2>



<p class="wp-block-paragraph">At <strong>P10 and P20</strong>, the job is straightforward: ship code, learn the systems, and figure out how Adobe builds and scales things. The goal is to become someone the team can rely on.</p>



<p class="wp-block-paragraph">By <strong>P30</strong>, something shifts. Engineers stop executing tasks and start owning problems (taking a feature end-to-end), making real technical calls, and thinking about why something should be built, not just how.</p>



<p class="wp-block-paragraph">At <strong>P40</strong>, the job changes for real. Senior engineers design systems, not just features. They cross team boundaries, shape architectural decisions, and lead bigger initiatives. For many, this is a long-term home &#8211; the next step demands a fundamentally different kind of growth.</p>



<h2 class="wp-block-heading"><span id="staff-the-real-career-breakpoint">Staff: the real career breakpoint</span></h2>



<p class="wp-block-paragraph">The <strong>jump from Senior (P40) to Staff (P50)</strong> is the most important one on the ladder. Same title family, completely different job.</p>



<p class="wp-block-paragraph">Staff engineers operate as technical leaders without formal authority. They define architecture, guide technical direction, and shape roadmaps across teams. At Staff, you&#8217;re measured by what others can build because of you and compensation starts to reflect that.</p>



<p class="wp-block-paragraph">Beyond Staff, engineering becomes increasingly strategic. <strong>Senior Staff engineers (P55)</strong> operate across domains, aligning engineering efforts with business goals and driving initiatives that span multiple teams.</p>



<p class="wp-block-paragraph"><strong>Principal engineers (P60)</strong> move to a company-wide level of influence. They define technical vision, tackle ambiguous problems, and shape decisions that impact entire product lines. At this level, engineering is less about building and more about direction-setting.</p>



<h2 class="wp-block-heading"><span id="cross-company-level-mapping">Cross-company level mapping</span></h2>



<p class="wp-block-paragraph">One useful way to understand Adobe’s ladder is to map it against more transparent systems at companies like <a href="https://shiftmag.dev/microsofts-software-engineering-career-ladder-9318/" target="_blank" rel="noreferrer noopener">Microsoft</a>. While titles and expectations vary slightly, <strong>the underlying progression is broadly aligned across Big Tech</strong>. Adobe’s levels tend to appear slightly compressed in naming, but comparable in scope, especially from Staff level onward.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="458" src="https://shiftmag.dev/wp-content/uploads/2026/05/adobe_3-1024x458.png?x32039" alt="" class="wp-image-9521" srcset="https://shiftmag.dev/wp-content/uploads/2026/05/adobe_3-1024x458.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/05/adobe_3-300x134.png 300w, https://shiftmag.dev/wp-content/uploads/2026/05/adobe_3-768x343.png 768w, https://shiftmag.dev/wp-content/uploads/2026/05/adobe_3.png 1150w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">The important nuance is that while the mapping is directionally accurate, <strong>scope matters more than exact title equivalence</strong>. A P50 at Adobe may operate closer to a strong L6 at Google or even edge into L7 territory, depending on the organization, reinforcing the idea that Adobe’s ladder is less about labels and more about impact.</p>



<h2 class="wp-block-heading"><span id="what-adobe-actually-values">What Adobe actually values?</span></h2>



<p class="wp-block-paragraph">One pattern runs through the whole ladder: <strong>scope drives everything</strong>.</p>



<ul class="wp-block-list">
<li>Early levels &#8211; Can you execute?</li>



<li>Mid levels &#8211; Can you own?</li>



<li>Senior &#8211; Can you design systems?</li>



<li>Staff+ &#8211; Can you influence outcomes across teams?</li>
</ul>



<p class="wp-block-paragraph">That&#8217;s the real progression. The ladder feels invisible from the outside because titles aren&#8217;t the point — expanding impact is.</p>



<p class="wp-block-paragraph">Adobe&#8217;s ladder stands out for how quietly it operates. No playbook, no loud framing, just one consistent logic:<strong> as you grow, you move from writing code to shaping systems to shaping decisions</strong>. At the top, one question defines everything: how much of the company changes because of your work?</p>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/05/adobe-career-ladder-n4-1200x630-1.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/05/adobe-career-ladder-n4-1200x630-1.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/05/adobe-career-ladder-n4-1200x630-1-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/05/adobe-career-ladder-n4-1200x630-1-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/05/adobe-career-ladder-n4-1200x630-1-768x403.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure><p>The post <a href="https://shiftmag.dev/lets-take-a-look-inside-adobes-complete-career-ladder-9464/">Let&#8217;s Take A Look Inside Adobe&#8217;s Complete Career Ladder</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>What 4 engineers with 10+ years of experience say about staying relevant in the AI era</title>
		<link>https://shiftmag.dev/what-4-engineers-with-10-years-of-experience-say-about-staying-relevant-in-the-ai-era-9309/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Fri, 24 Apr 2026 13:58:54 +0000</pubDate>
				<category><![CDATA[Career]]></category>
		<category><![CDATA[Developer Experience]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[career advice]]></category>
		<category><![CDATA[development]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=9309</guid>

					<description><![CDATA[<p>I spoke with four veteran software engineers to explore how they’re approaching long-term career resilience and adapting their skills to stay effective in the field.</p>
<p>The post <a href="https://shiftmag.dev/what-4-engineers-with-10-years-of-experience-say-about-staying-relevant-in-the-ai-era-9309/">What 4 engineers with 10+ years of experience say about staying relevant in the AI era</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Let’s start with a cliché: AI has quickly become part of everyday work in tech, reshaping what it means to be a developer.</p>



<p class="wp-block-paragraph">A field that, just a few years ago, felt stable and full of opportunity now comes with more uncertainty -breaking in is harder, and <strong>staying relevant takes constant effort</strong>.</p>



<p class="wp-block-paragraph">We spoke with software engineers who have more than 10 years of experience to hear how they’re navigating these changes.</p>



<h2 class="wp-block-heading"><span id="thinking-back-on-your-career-what%e2%80%99s-helped-you-stay-relevant-as-technologies-and-trends-kept-evolving">Thinking back on your career, what’s helped you stay relevant as technologies and trends kept evolving?</span></h2>



<p class="wp-block-paragraph"><strong>Denis</strong>:<strong> </strong>&#8220;I was always looking for ways to improve my workflow, so I could spend more time on the interesting, creative parts of the job and less on repetitive, routine tasks. I focused on really understanding problems and possible solutions, which meant <strong>building deeper knowledge rather than relying on quick fixes from the internet</strong>. I read books, followed blogs, attended both live and online conferences, and learned from experienced people in the industry to get different perspectives and form my own conclusions.</p>



<p class="wp-block-paragraph">To stay relevant, I focused on real user use cases and the problems behind them, building solutions that create real value. </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">I also made a point of staying close to the products, users, and solutions over time to see what actually works and what doesn’t, regardless of hype or trends.</p>
</blockquote>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="256" src="https://shiftmag.dev/wp-content/uploads/2026/04/denis-1024x256.png?x32039" alt="" class="wp-image-9339" srcset="https://shiftmag.dev/wp-content/uploads/2026/04/denis-1024x256.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/04/denis-300x75.png 300w, https://shiftmag.dev/wp-content/uploads/2026/04/denis-768x192.png 768w, https://shiftmag.dev/wp-content/uploads/2026/04/denis.png 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Working in teams and collaborating closely helped a lot, as there are always tough questions and healthy discussions that lead to better decisions in the end.&#8221;</p>



<p class="wp-block-paragraph"><strong>Marina: </strong>&#8220;Staying relevant over the years came down to <strong>curiosity and hands‑on learning</strong>. I regularly read blogs and watch online conferences to keep up with&nbsp;new technologies, but I learned the most by trying things out through small POCs. Experimenting helped me understand problems more deeply and see what really worked.&nbsp;&nbsp;</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Changing teams also played&nbsp;a big role. Working with people who had&nbsp;different backgrounds&nbsp;and experiences exposed me to new ways of thinking and pushed me to grow.&nbsp;&nbsp;</p>
</blockquote>



<p class="wp-block-paragraph">Finally, <strong>working on real products in production environments</strong> (especially in larger teams) taught me lessons you simply&nbsp;can’t&nbsp;learn alone. Collaboration, shared ownership, and learning from others helped me continuously adapt as the industry evolved.&#8221;</p>



<p class="wp-block-paragraph"><strong>Marko</strong>: &#8220;For me it&#8217;s a <strong>combination of continuous learning and a strong focus on fundamentals</strong>. I always tried to explore&nbsp;new technologies&nbsp;and different domains, but with an emphasis on really understanding the core principles behind them. That way, the knowledge stays useful even if my career moves in a different direction, and it becomes much easier to build on top of it later.</p>



<p class="wp-block-paragraph">Just like for the other guys, another important factor was working on real products running in serious production environments, especially in larger teams. <strong>Collaboration, communication, and learning from others in a shared codebase</strong> bring insights you simply can’t get when working alone. Those experiences helped me grow not only technically, but also in how I approach problems and make decisions in the long run.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">I’d&nbsp;describe myself as a cautious early adopter. I enjoy experimenting with&nbsp;new technologies, but I try to understand the fundamentals behind them first, so I can evaluate where they truly make sense and how they contribute real value rather than just following hype.</p>
</blockquote>



<p class="wp-block-paragraph">Finally, <strong>self-reflection played&nbsp;a big role</strong>.&nbsp;Regularly asking&nbsp;myself what skills&nbsp;I’m&nbsp;missing, how I can contribute more to my team or company, and then actively working towards that has led to many good long-term career decisions.&#8221;</p>



<p class="wp-block-paragraph"><strong>Mario</strong>: &#8220;Talking to other people, watching what others build, and experimenting myself plus exploring open source projects, YouTube videos, and Udemy courses on 2x speed to quickly understand what’s possible with unfamiliar tools. I also follow Hacker News and similar newsletters. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="256" src="https://shiftmag.dev/wp-content/uploads/2026/04/mario-1024x256.png?x32039" alt="" class="wp-image-9340" srcset="https://shiftmag.dev/wp-content/uploads/2026/04/mario-1024x256.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/04/mario-300x75.png 300w, https://shiftmag.dev/wp-content/uploads/2026/04/mario-768x192.png 768w, https://shiftmag.dev/wp-content/uploads/2026/04/mario.png 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">But staying relevant isn’t just about knowing what’s new; it’s about knowing what’s actually worth adopting &#8211; and when.</p>
</blockquote>



<p class="wp-block-paragraph"><strong>Understanding the high-level concepts</strong> <strong>and the problem</strong> I’m trying to solve is what allows me to pick something that looks like the right tool. After that, trying it out and <strong>getting first-hand experience</strong>: how it feels under the fingers, and whether it really solves my problem and makes my life easier &#8211; is mostly the deciding factor for me, but not the only one. If I’m doing a quick throwaway POC, I can try anything and really find the best tool.</p>



<p class="wp-block-paragraph">But if&nbsp;I&#8217;m&nbsp;working in a team environment where cognitive load is already high,&nbsp;I&#8217;m&nbsp;careful <strong>not to introduce&nbsp;new technologies&nbsp;every other day</strong> just because&nbsp;it&#8217;s&nbsp;the new cool shiny thing &#8211; even if it&nbsp;actually is&nbsp;the best tool.&nbsp;It&#8217;s&nbsp;a&nbsp;tradeoff, and one that needs careful consideration. And sometimes the best&nbsp;isn&#8217;t&nbsp;even needed &#8211; something that works is good enough.&#8221;</p>



<h2 class="wp-block-heading"><span id="in-your-opinion-is-long-term-success-more-about-being-a-deep-specialist-or-a-broad-generalist-has-your-perspective-changed-over-time">In your opinion, is long-term success more about being a deep specialist or a broad generalist? Has your perspective changed over time?</span></h2>



<p class="wp-block-paragraph"><strong>Denis</strong>: For long-term success (whatever that is),&nbsp;it&#8217;s&nbsp;generally better&nbsp;to develop <strong>M-shaped skills</strong>. That will take some time, but only with great collaboration and multiple deep&nbsp;expertise&nbsp;areas can you be innovative and versatile, bringing measurable value and not be easily replaceable.</p>



<p class="wp-block-paragraph"><strong>Marina</strong>: Earlier in my career, I believed that being a T‑shaped developer was the ideal path and I assumed that trying to learn more than one thing deeply would only lead to superficial knowledge and that focusing on a single specialization was the safest way to grow.&nbsp;Over time, my view changed.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Through real-world experience, I realized it’s possible to build strong, meaningful expertise in multiple areas without losing depth. As systems became more complex, having deeper knowledge across several domains helped me understand the bigger picture better, make better technical decisions, and collaborate more effectively with others.</p>
</blockquote>



<p class="wp-block-paragraph">Today,&nbsp;I believe long‑term success&nbsp;comes from <strong>combining depth with breadth</strong> &#8211; developing strong&nbsp;expertise&nbsp;in more than one area and continuously expanding that range as technology evolves. This flexibility has helped me stay relevant and adapt as roles and technologies have changed.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="256" src="https://shiftmag.dev/wp-content/uploads/2026/04/marina_final-1024x256.png?x32039" alt="" class="wp-image-9342" srcset="https://shiftmag.dev/wp-content/uploads/2026/04/marina_final-1024x256.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/04/marina_final-300x75.png 300w, https://shiftmag.dev/wp-content/uploads/2026/04/marina_final-768x192.png 768w, https://shiftmag.dev/wp-content/uploads/2026/04/marina_final.png 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph"><strong>Mario:</strong> I wonder if&nbsp;it&#8217;s&nbsp;possible to be M-shaped <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /> For a long time, I was a firm believer that T-shaped is the way to go &#8211; a broad overview, but with at least one area of genuine deep&nbsp;expertise. And I still think&nbsp;that&#8217;s&nbsp;a solid foundation for any engineer.</p>



<p class="wp-block-paragraph">But over 20+ years, curiosity kept pulling me in different directions: low-level Linux internals, networking, compilers, containers, orchestration, and large-scale distributed systems, working at different layers of the stack. And each time, I went deep enough to solve a real problem. That <strong>experience adds up over time</strong>.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Understanding the problem and figuring out which layer it needs to be solved in matters more than the technology layer itself, and then it’s about stitching everything together.</p>
</blockquote>



<p class="wp-block-paragraph">Do that long enough, across enough domains, and you naturally grow more spikes.&nbsp;So&nbsp;my view has evolved &#8211; <strong>I started as a T-shaped believer, and somewhere along the way I became something closer to M-shaped</strong>. Not by design, but by following the problems. And if you ask me what&nbsp;I&#8217;m&nbsp;an expert at specifically,&nbsp;I&#8217;d&nbsp;say solving&nbsp;problems, if&nbsp;that counts as&nbsp;expertise.&nbsp;That&#8217;s&nbsp;at least what I currently strive for.</p>



<p class="wp-block-paragraph"><strong>Marko:</strong> Today,&nbsp;I’d&nbsp;describe myself as <strong>somewhere between T-shaped and M-shaped</strong>,&nbsp;maybe N-shaped, still evolving. Early in my career, the T-shaped model made perfect sense, broad knowledge with depth in one area. Over time, as access to knowledge became easier and technologies evolved faster, I realized how valuable it is to develop depth in multiple areas</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">What ties all of this together is problem-solving. Technologies change, but problems&nbsp;remain. Being able to learn continuously, adapt, and apply concepts from one domain to&nbsp;seemingly unrelated&nbsp;problems&nbsp;becomes&nbsp;incredibly valuable over the long term.</p>
</blockquote>



<p class="wp-block-paragraph">If I were to advise myself 10 years ago or to others today, it would be to <strong>stay curious, keep learning, and surround yourself with people you can both learn from and teach</strong>. Also,&nbsp;don’t&nbsp;be afraid to broaden your horizons, look for ways to contribute beyond your narrow specialization, pick up complementary skills, and take some risks. Growth often happens outside your comfort zone.</p>



<h2 class="wp-block-heading"><span id="how-do-you-see-ai-toolsimpactinglong-term-developer-careers">How do you see AI tools&nbsp;impacting&nbsp;long-term developer careers?</span></h2>



<p class="wp-block-paragraph"><strong>Mario:</strong> AI impact is real, especially in engineering. We’re much faster at writing code, and I can smart-search unfamiliar codebases and quickly understand how things work (something that used to take a huge effort). </p>



<p class="wp-block-paragraph">But there’s a price.</p>



<p class="wp-block-paragraph"><strong>The amount of generated code is huge, yet humans still need to review, understand, and own it</strong>. AI isn’t the one waking up when something breaks. Creating PRs with AI is easy, being responsible for them is another story.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Our role has shifted to making sure code that looks ok is actually ok &#8211; fits the intended architecture, the broader system, the business rules, all the things AI isn’t aware of. The value is the same: understanding whether the code works as intended and preventing it from degrading into a ball of mud nobody can understand or fix at 3am.</p>
</blockquote>



<p class="wp-block-paragraph">What’s changed is how much harder that challenge has become with code being generated at this speed. <strong>Young developers are in a tight spot</strong> &#8211; suddenly expected to skip writing code by hand but still have the same depth of understanding.</p>



<p class="wp-block-paragraph">And I’m not sure you can skip that part. There’s something about writing code by hand, hitting a wall, debugging it yourself, and feeling the pain of it not working that builds intuition you can’t shortcut. Even if AI is faster and easier. The best advice is to learn the concepts, fundamentals, and engineering best practices that hold regardless of AI.</p>



<p class="wp-block-paragraph">You need to be able to<strong> look at AI-generated code and know whether a for loop is acceptable or a dictionary lookup fits better</strong>, that’s software engineering 101. AI can generate the code, but we still need to understand whether it actually fits.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Write as much code by hand as you can. Use AI to review it, ask for other options, and have it challenge your approach, and then actually think through the answers. That way you learn faster while still building real understanding. </p>
</blockquote>



<p class="wp-block-paragraph">And <strong>don’t skip debugging AI-generated code step by step</strong>; I do it regularly. It’s how you move from just looking at code to actually feeling it. That difference becomes obvious once you try it.</p>



<p class="wp-block-paragraph">You’ll often be surprised how much you miss just by reading &#8211; sometimes it’s &#8220;this is not how I thought it worked&#8221;, sometimes it’s &#8220;I did not expect this at all.&#8221; Both are valuable, and both come from actually stepping through it.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="256" src="https://shiftmag.dev/wp-content/uploads/2026/04/marko-1024x256.png?x32039" alt="" class="wp-image-9341" srcset="https://shiftmag.dev/wp-content/uploads/2026/04/marko-1024x256.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/04/marko-300x75.png 300w, https://shiftmag.dev/wp-content/uploads/2026/04/marko-768x192.png 768w, https://shiftmag.dev/wp-content/uploads/2026/04/marko.png 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph"><strong>Marko:</strong> AI tools already have&nbsp;a huge impact&nbsp;on my daily work, from writing code and understanding codebases to reviews, idea generation, debugging, and learning new topics. Overall, I see AI as a strong positive force for developers. It significantly reduces the time spent on repetitive or low-value coding tasks and frees up more space for thinking about architecture, system design, and solving complex problems that truly matter in production.</p>



<p class="wp-block-paragraph">That said, some things won’t disappear. Understanding the problem and broader context, making architectural trade-offs, communicating well, and taking ownership are still firmly human. When something breaks at 2 a.m., it’s still engineers who make decisions and take responsibility. AI is powerful, but only as effective as the person using it.</p>



<p class="wp-block-paragraph">For junior developers, don’t skip the fundamentals. Expectations are higher than ever, but strong foundations are key for a sustainable career. The good news is that access to knowledge and AI tools is better than ever. Use AI to accelerate learning, not replace understanding. Give yourself time, build experience, and master the basics—that investment pays off for decades.</p>



<p class="wp-block-paragraph"><strong>Marina: </strong>AI tools will significantly change how developers work, but I&nbsp;don’t&nbsp;see them replacing strong engineers. Instead, they will amplify those who understand what they are building. For younger developers, <strong>the key is to learn with AI, not just watch AI work</strong>.&nbsp;&nbsp;</p>



<p class="wp-block-paragraph">It’s important to <strong>question AI output</strong>, understand why it made certain changes, and how those changes affect the system. Treat AI as a learning partner rather than a shortcut. Blindly accepting generated code can limit growth, while actively analysing and improving it builds real&nbsp;expertise.&nbsp;&nbsp;</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Younger developers should also focus heavily on architecture and system design. When you understand how systems are structured, how components interact, and what trade‑offs exist, AI becomes far more powerful.&nbsp;It’s&nbsp;much easier to ask the right questions (and get useful results) when you already understand the problem space.</p>
</blockquote>



<p class="wp-block-paragraph"><strong>Denis</strong>: <strong>AI tools have made coding skills almost irrelevant</strong>. Still, other skills and practices related to quality, such as trunk-based development, TDD, continuous delivery, modularity, cohesion, DDD, etc., are more valuable than before. </p>



<p class="wp-block-paragraph">AI tools are a <strong>powerful amplifier</strong>, and they need guidance, so software engineers with those skills will remain relevant and in demand for a long time.&nbsp;Understanding of the (business) problem and the solution&nbsp;shouldn&#8217;t&nbsp;be outsourced to the AI. Software engineers still need to understand trade-offs,&nbsp;architecture,&nbsp;and code.&nbsp;</p>



<h2 class="wp-block-heading"><span id=""><strong>&nbsp;</strong></span></h2>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/04/shift_final.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/04/shift_final.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/04/shift_final-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/04/shift_final-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/04/shift_final-768x403.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure><p>The post <a href="https://shiftmag.dev/what-4-engineers-with-10-years-of-experience-say-about-staying-relevant-in-the-ai-era-9309/">What 4 engineers with 10+ years of experience say about staying relevant in the AI era</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Many Engineering Leaders Are Getting AI Adoption Wrong</title>
		<link>https://shiftmag.dev/ai-is-changing-development-8791/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Wed, 01 Apr 2026 14:04:10 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[Chris Parsons]]></category>
		<category><![CDATA[CTO]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=8791</guid>

					<description><![CDATA[<p>As AI tools become part of developers’ everyday workflows, a lot of engineering leaders assume that getting started is just a matter of buying the right software.</p>
<p>The post <a href="https://shiftmag.dev/ai-is-changing-development-8791/">Many Engineering Leaders Are Getting AI Adoption Wrong</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">But according to CTO and AI consultant <strong>Chris Parsons</strong>, the real challenge isn’t the tools themselves, it’s having the right mindset to use them effectively.</p>



<p class="wp-block-paragraph">Just introducing new tools isn’t enough to make a real impact. <strong>What truly matters is how teams work</strong> -how they build, collaborate, and keep learning along the way, says Parsons.</p>



<p class="wp-block-paragraph">He explained why many engineering leaders struggle with AI adoption, and how teams can move beyond just using AI tools to creating workflows where AI truly becomes a collaborator.</p>



<h2 class="wp-block-heading"><span id="ai-tools-can%e2%80%99t-be-treated-like-any-other-software">AI tools can’t be treated like any other software</span></h2>



<p class="wp-block-paragraph">Generative AI has sparked <strong>huge expectations across engineering teams</strong>. Many organizations assume that introducing tools like code assistants or LLM-powered platforms will instantly boost productivity. </p>



<p class="wp-block-paragraph">But Parsons argues that the real hurdle isn’t the technology itself, it’s how well the organization understands and adapts to using it.</p>



<p class="wp-block-paragraph">For CTOs and engineering leaders, this often leads to a common mistake: <strong>assuming developers can adopt AI tools as quickly and easily as they would a new IDE or software library</strong>. In reality, the shift goes much deeper:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">It’s a fundamentally different way of working. You can’t simply give engineers an AI tool and expect them to start using it effectively right away. It requires time, experimentation, and a real shift in how teams approach development.</p>
</blockquote>



<p class="wp-block-paragraph">Unlike traditional software, <strong>AI is inherently non-deterministic</strong> &#8211; running the same prompt can yield different results. Teams may see promising outcomes in internal tests and assume it will behave consistently in production, only to find that real users often produce very different results.</p>



<h2 class="wp-block-heading"><span id="people-not-frameworks-drive-organizational-success">People (not frameworks) drive organizational success</span></h2>



<p class="wp-block-paragraph">Parsons’ perspective on AI adoption is also shaped by his experience scaling engineering teams. During his time at Gower Street, he helped grow a small team into an organization of more than 50 people.</p>



<p class="wp-block-paragraph">Early in that journey, he focused heavily on building the most efficient team structures and processes. Over time, however, he realized that organizational success depended much more on people than on frameworks:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">If your engineering manager and product manager aren’t speaking to each other, introducing a weekly meeting won’t fix the problem.</p>
</blockquote>



<h2 class="wp-block-heading"><span id="the-key-to-ai-success-track-everything">The key to AI success? Track everything</span></h2>



<p class="wp-block-paragraph">Parsons starts with a surprisingly simple recommendation for AI adoptation: <strong>log everything</strong>. Every interaction, every model response, and every step in the AI pipeline should be recorded. These logs form the backbone for understanding how the system really performs in the real world.</p>



<p class="wp-block-paragraph">From there, teams can go through the logs manually to see which responses are helpful, which are accurate, and which might cause problems.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">At the beginning, the responses are often not that good. Sometimes they’re okay, sometimes quite bad, and occasionally surprisingly bad.</p>
</blockquote>



<p class="wp-block-paragraph">This hands-on review helps teams refine prompts, tweak workflows, and boost successful responses. Parsons suggests <strong>tracking AI performance just like engineering efficiency</strong>, using metrics like positive interactions and fewer errors.</p>



<h2 class="wp-block-heading"><span id="you-should-explore-meta%e2%80%91prompting">You should explore meta‑prompting</span></h2>



<p class="wp-block-paragraph">One technique Parsons believes more leaders should explore is meta‑prompting &#8211; using AI to improve the prompts themselves.</p>



<p class="wp-block-paragraph">Rather than trying to write the perfect prompt from the start, Parsons recommends <strong>letting the AI lead the conversation</strong>, asking one clarifying question at a time. This lets the model gather context gradually and deliver much better results.</p>



<p class="wp-block-paragraph">Over time, teams can keep improving prompts by asking the AI what extra information it would have needed earlier, refining them step by step.</p>



<p class="wp-block-paragraph">Parsons sees this iterative approach as <strong>part of a bigger shift</strong>: AI is evolving from a simple assistant into a collaborator, increasingly guiding problem-solving and asking questions like a coach.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">We’ll start giving AI tasks and letting it run for some time without us being involved.</p>
</blockquote>



<p class="wp-block-paragraph">That shift will mean rethinking how teams collaborate with machines. Parsons points out that even the communication tools teams rely on may need to evolve to accommodate AI as an active participant in discussions and workflows.<br></p>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="720" src="https://shiftmag.dev/wp-content/uploads/2026/03/parsons_final_.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/03/parsons_final_.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/03/parsons_final_-300x180.png 300w, https://shiftmag.dev/wp-content/uploads/2026/03/parsons_final_-1024x614.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/03/parsons_final_-768x461.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure>


<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="CTO&#039;s Honest Opinion on AI Development" width="500" height="281" src="https://www.youtube.com/embed/JYp8v65pGAg?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>
<p>The post <a href="https://shiftmag.dev/ai-is-changing-development-8791/">Many Engineering Leaders Are Getting AI Adoption Wrong</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Forget the Model, It’s Workflows That Make LLM Products Run</title>
		<link>https://shiftmag.dev/llms-can-improve-customer-operations-7716/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Thu, 05 Feb 2026 14:18:39 +0000</pubDate>
				<category><![CDATA[Event]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[How to Web]]></category>
		<category><![CDATA[LLM]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=7716</guid>

					<description><![CDATA[<p>Building with LLMs is nothing like traditional software. If we want something that actually works in production, we have to test it, monitor it, and keep iterating on real customer data.</p>
<p>The post <a href="https://shiftmag.dev/llms-can-improve-customer-operations-7716/">Forget the Model, It’s Workflows That Make LLM Products Run</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/02/New-ShiftMag-panel-interview.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/02/New-ShiftMag-panel-interview.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/02/New-ShiftMag-panel-interview-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/02/New-ShiftMag-panel-interview-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/02/New-ShiftMag-panel-interview-768x403.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure>


<p class="wp-block-paragraph">From his experience leading AI product teams, <strong>Andrew Mende</strong> (Senior Product Manager, Machine Learning at Booking.com) explained what it truly takes to ship LLM-based products in production.</p>



<h2 class="wp-block-heading"><span id="making-ai-products-reliable-requires-new-workflows">Making AI products reliable requires new workflows</span></h2>



<p class="wp-block-paragraph">For Mende, the buzz around AI is a rare shift, like the rise of smartphones. But what does it mean for product teams?</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">This moment unlocks new ways of solving customer problems that were previously impossible due to technical constraints. </p>
</blockquote>



<p class="wp-block-paragraph">He was clear: <strong>traditional product management approaches often fail with AI-driven products</strong>. </p>



<p class="wp-block-paragraph">LLM-based systems behave differently, demand new workflows, and bring new types of risk. </p>



<p class="wp-block-paragraph">Unlike deterministic software, <strong>LLMs are probabilistic</strong> (identical inputs can produce different outputs), making experimentation easy but production readiness challenging, and forcing teams to rethink how they test, evaluate, and monitor features.</p>



<p class="wp-block-paragraph">One of the biggest traps, Mende explained, is <strong>confusing a successful prototype with a scalable solution</strong>:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">It’s easy to paste a prompt into ChatGPT and see results; much harder to make it reliable across thousands of real customer inputs.</p>
</blockquote>



<p class="wp-block-paragraph">Teams need <strong>structured datasets</strong>, big tables of real customer examples, to track accuracy, spot regressions, and see if changes actually work. Without them, it’s all guesswork.</p>



<h2 class="wp-block-heading"><span id="focus-on-accuracy-cost-and-speed">Focus on accuracy, cost, and speed</span></h2>



<p class="wp-block-paragraph">Mende’s practical approach to model selection focuses on <strong>accuracy, cost, and latency</strong>: start with the most capable model to see if the problem can be solved, then move to smaller or faster models to optimize performance. </p>



<p class="wp-block-paragraph">This requires testing <strong>multiple configurations</strong> (context size, prompts, and parameters) since even small changes affect results. Beyond the model, context selection, prompt instructions, and external tools are critical:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">For example, when a customer asks about a specific order, the system should fetch real-time data instead of relying on static knowledge. This combination of LLMs and tools turns simple prompts into full systems, but also increases complexity and maintenance costs.</p>
</blockquote>



<h2 class="wp-block-heading">LLMs can transform how users interact &#8211; if teams build the right infrastructure</h2>



<p class="wp-block-paragraph">Mende concluded his How to Web lecture by saying LLMs shine by transforming user interaction: for the first time, <strong>digital products can understand plain language</strong>, turning customer requests directly into actions.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">This shift brings digital experiences closer to human conversations and enables new product patterns that were out of reach just a few years ago.</p>
</blockquote>



<p class="wp-block-paragraph">The challenge now, Mende explained, is not whether LLMs work, but whether teams are willing to build the evaluation, monitoring, and infrastructure required to make them truly useful.</p>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://shiftmag.dev/llms-can-improve-customer-operations-7716/">Forget the Model, It’s Workflows That Make LLM Products Run</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Andrej Karpathy Admits Software Development Has Changed for Good</title>
		<link>https://shiftmag.dev/llm-agents-claude-7751/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Thu, 29 Jan 2026 14:55:44 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[Claude]]></category>
		<category><![CDATA[Developer Productivity]]></category>
		<category><![CDATA[development]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=7751</guid>

					<description><![CDATA[<p>Ex-Tesla AI director now programs mostly in plain English with AI, calling it the biggest workflow change in 20 years.</p>
<p>The post <a href="https://shiftmag.dev/llm-agents-claude-7751/">Andrej Karpathy Admits Software Development Has Changed for Good</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">When <strong>Andrej Karpathy</strong>, former director of AI at Tesla and one of the most influential voices in modern artificial intelligence, <a href="https://x.com/karpathy/status/2015883857489522876" target="_blank" rel="noreferrer noopener">casually admitted on X</a> that he now <strong>does most of his programming in English rather than code</strong>, it struck a nerve.</p>



<p class="wp-block-paragraph">Not because developers weren’t already sensing this shift, but because he said it, and because he revealed something many wouldn’t openly admit:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">It hurts the ego a bit.</p>
</blockquote>



<p class="wp-block-paragraph">This wasn’t just another AI hot take. A top expert openly admitted that <strong>software development has changed in a fundamental way</strong>. Karpathy was clear:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">This is easily the biggest change to my basic coding workflow in 2 decades of programming and it happened over the course of the few weeks. </p>
</blockquote>



<h2 class="wp-block-heading"><span id="karpathy-in-his-own-words"><strong>Karpathy, in his own words</strong></span></h2>



<p class="wp-block-paragraph">Karpathy explains how, over the course of just a few weeks coding in Claude, his workflow flipped almost entirely. <strong>What was once mostly handwritten code is now largely driven by LLMs</strong>, guided through natural language.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">I really am mostly programming in English now, a bit sheepishly telling the LLM what code to write… in words. It hurts the ego a bit, but the power to operate over software in large &#8220;code actions&#8221; is just too net useful.</p>
</blockquote>



<p class="wp-block-paragraph">That sentence carries more weight than it first appears. It openly acknowledges the productivity gains while naming the quiet discomfort many developers feel but rarely articulate. Even for Karpathy, something is unsettling about no longer being the one writing the code line by line.</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="en" dir="ltr">It feels like I’m cheating. Which is a very weird feeling to have. It takes a while to unpack. It’s because some code that used to be a point of pride and high IQ and knowledge is suddenly free and instant and it’s very disorienting.</p>&mdash; Andrej Karpathy (@karpathy) <a href="https://twitter.com/karpathy/status/2015895365674021136?ref_src=twsrc%5Etfw">January 26, 2026</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<p class="wp-block-paragraph">This shift isn’t about convenience or a slightly better tool. Karpathy describes it as a phase change, not an incremental improvement.</p>



<p class="wp-block-paragraph">The role of software engineers moves away from writing individual lines of code and toward orchestrating large code actions. LLMs don’t behave like perfect assistants; <strong>they act more like eager but sloppy junior developers: fast, capable, and occasionally careless</strong>. They don’t ask clarifying questions, they guess. And sometimes they guess wrong.</p>



<p class="wp-block-paragraph">The result is faster output, but also a different kind of responsibility. Less mechanical, more abstract. Less about syntax, more about judgment.</p>



<h2 class="wp-block-heading"><span id="community-reaction-and-a-bruised-identity">Community reaction and a bruised identity</span></h2>



<p class="wp-block-paragraph">The reaction to Karpathy’s post helps explain why it resonated so widely. Some developers see this evolution as liberating, with fewer repetitive tasks, more leverage, and more time spent on meaningful problem-solving. Others see something more troubling: a slow erosion of the craft that shaped their professional identity.</p>



<p class="wp-block-paragraph">A familiar split emerges: on one side are builders who embrace orchestration, prompting, and verification, on the other are developers who feel that if they’re not writing code, they’re not really programming anymore.</p>



<p class="wp-block-paragraph"><strong>That tension is emotional, not technical</strong>. Programming has never been just a job. For many, it’s a source of pride. When that pride is challenged, even by efficiency, it stings.</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="en" dir="ltr">I let Claude Code turn <a href="https://twitter.com/karpathy?ref_src=twsrc%5Etfw">@karpathy</a>&#39;s post into agent skills. It first generated a bunch of skill files and around 800 lines of descriptions.<br><br>Then I let it use these agent skills to review itself. Boom, it cut itself down to 70 lines of clean, solid instructions.… <a href="https://t.co/YF7p6DpHe0">https://t.co/YF7p6DpHe0</a> <a href="https://t.co/W9MLoigt2R">pic.twitter.com/W9MLoigt2R</a></p>&mdash; Jiayuan (JY) Zhang (@jiayuan_jy) <a href="https://twitter.com/jiayuan_jy/status/2015998216517583211?ref_src=twsrc%5Etfw">January 27, 2026</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<p class="wp-block-paragraph">What makes this moment particularly interesting is that Karpathy <strong>hasn’t been blindly optimistic about AI agents</strong>. In the past, he’s openly questioned their maturity, arguing that today’s agents are unreliable and far from fully autonomous.</p>



<p class="wp-block-paragraph">This contrast is important. He’s saying these tools are too useful to ignore, but he’s also clear they’re still messy, fragile, and imperfect. This isn’t hype, it’s real challenges. And challenges are what spark meaningful discussion.</p>



<h2 class="wp-block-heading"><span id="am-i-really-a-developer-if-i%e2%80%99m-not-writing-code">Am I really a developer if I’m not writing code?</span></h2>



<p class="wp-block-paragraph">This conversation goes beyond the usual AI discourse cycle. If top engineers are moving from writing code to guiding systems, if success is measured by results rather than lines of code, and if pride, not skill, is the main barrier, then something bigger is happening.</p>



<p class="wp-block-paragraph">We’re not just changing tools, <strong>we’re renegotiating what it means to be a developer</strong>. </p>



<p class="wp-block-paragraph">The real question isn’t if this trend will keep going. It’s this: If programming becomes mostly about language, judgment, and style, what happens to being defined by code?</p>



<p class="wp-block-paragraph">Karpathy’s post doesn’t give answers but shows the tension. Is moving away from manual coding progress or loss? Empowerment or subtle deskilling? </p>



<p class="wp-block-paragraph">And if top engineers admit it &#8220;hurts the ego,&#8221; what does that mean for the future of the profession?</p>



<p class="wp-block-paragraph">By the end of 2025, LLM coding agents reached a level of coherence that triggered a shift in software engineering. <strong>Intelligence is now outpacing tools, workflows, and organizational structures</strong>. The industry is just starting to catch up, and 2026 is shaping up to be a fast-moving year as development learns to harness this new power.</p>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2026/01/claude_final.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2026/01/claude_final.png 1200w, https://shiftmag.dev/wp-content/uploads/2026/01/claude_final-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2026/01/claude_final-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2026/01/claude_final-768x403.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure><p>The post <a href="https://shiftmag.dev/llm-agents-claude-7751/">Andrej Karpathy Admits Software Development Has Changed for Good</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How Developers Can Leverage AI Today</title>
		<link>https://shiftmag.dev/its-not-the-ai-its-what-you-do-with-it-7060/</link>
		
		<dc:creator><![CDATA[Marko Crnjanski]]></dc:creator>
		<pubDate>Fri, 28 Nov 2025 12:49:47 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[DevEx]]></category>
		<category><![CDATA[Shift Kuala Lumpur]]></category>
		<category><![CDATA[Tejas Kumar]]></category>
		<guid isPermaLink="false">https://shiftmag.dev/?p=7060</guid>

					<description><![CDATA[<p>As Tejas Kumar explains, AI isn’t about the tools themselves - it’s about reclaiming time, boosting creativity, and using what’s already at your fingertips in clever, unexpected ways.</p>
<p>The post <a href="https://shiftmag.dev/its-not-the-ai-its-what-you-do-with-it-7060/">How Developers Can Leverage AI Today</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Let’s draw a parallel between <strong>today’s software engineers and Renaissance painters.</strong></p>



<p class="wp-block-paragraph">For centuries, painters thrived because society depended on their ability to capture reality. But when a better tool arrived &#8211; the camera &#8211; <strong>the ground beneath them shifted</strong>. The craft didn’t disappear, but the meaning of value changed forever.</p>



<p class="wp-block-paragraph">&#8220;We’re facing something similar,&#8221; said <strong>Tejas Kumar</strong> (Developer Advocate, IBM) at the <a href="https://shiftmag.dev/tag/shift-kuala-lumpur/" target="_blank" rel="noreferrer noopener">Shift conference in Kuala Lumpur</a>. Citing tools like Cursor, Lovable, Bolt.new, Vero, and Windsor, he reminded developers that <strong>coding agents are already writing software faster</strong> (and often more reliably) than humans.</p>



<h2 class="wp-block-heading"><span id="developers-must-rely-on-first-principles-reasoning">Developers must rely on first-principles reasoning</span></h2>



<p class="wp-block-paragraph">The data backs this up. Job openings across S&amp;P 500 companies dropped sharply after ChatGPT’s release. Yes, market cycles and the zero-interest-rate hiring bubble played their part, but the trend points to something bigger: <strong>the profession is being reshaped</strong>, and developers need to understand how to stay relevant in the years ahead.</p>



<p class="wp-block-paragraph">To navigate this landscape, Kumar argued, developers need to lean on first-principles reasoning. The term gets tossed around often in tech circles, but it’s rarely defined clearly. He offered a straightforward explanation:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">First-principles reasoning means starting from what is invariant &#8211; the parts that never change &#8211; and building your understanding from there.</p>
</blockquote>



<p class="wp-block-paragraph">Invariants are the fundamental laws of reality &#8211; things like gravity, light, or the rising and setting of the sun. They remain constant, no matter what tools we create. </p>



<p class="wp-block-paragraph">Returning to the Renaissance analogy, Kumar explained that both painters and cameras are simply different ways of capturing the same invariant: light. <strong>The tools change, but the underlying truth stays the same</strong>.</p>



<p class="wp-block-paragraph">This approach, he argued, helps us understand the deep value of AI. </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">The goal isn’t to cling to the tools we’ve always used but to identify the underlying invariant that AI supports. In this case, it is reclaiming time and human agency &#8211; giving developers the freedom to focus on meaning while delegating repetitive work to machines.</p>
</blockquote>



<h2 class="wp-block-heading"><span id="the-invariant-in-ai-it-gives-us-back-lost-time">The invariant in AI? It gives us back lost time</span></h2>



<p class="wp-block-paragraph">The point became unmistakable when Tejas demonstrated a <strong>multi-step AI agent in real time</strong>. Without typing a single keystroke, he watched as the agent opened Chrome, searched for the event schedule, parsed the results, and added the correct session to his calendar.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">While my hands were off, what could I have been doing? I could’ve been at the gym. Out on a run. Playing with children I don’t have yet &#8211; but pray for every day. I could have been doing something meaningful. Instead, I’ve outsourced this tedious work to my agent- and in return, I get back life.</p>
</blockquote>



<p class="wp-block-paragraph">AI does not simply automate tasks. It returns lost hours and makes room for creativity, rest, curiosity, and focus. That, he argued, is the true invariant AI addresses.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="538" src="https://shiftmag.dev/wp-content/uploads/2025/11/tejas_2-1024x538.png?x32039" alt="" class="wp-image-7061" srcset="https://shiftmag.dev/wp-content/uploads/2025/11/tejas_2-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2025/11/tejas_2-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2025/11/tejas_2-768x403.png 768w, https://shiftmag.dev/wp-content/uploads/2025/11/tejas_2.png 1200w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Tejas urged developers to embrace the moment &#8211; engineers have never had access to so many powerful open-source tools.</figcaption></figure>



<h2 class="wp-block-heading">Breakthroughs don’t need new toys &#8211; they need new tricks</h2>



<p class="wp-block-paragraph">As the keynote wrapped, Kumar recounted the telescope’s origins. In 1608, Dutch glassmakers used clear spyglasses horizontally to scan the horizon. A year later, Galileo pointed the same tool upward, unlocking new worlds. </p>



<p class="wp-block-paragraph">&#8220;He literally saw Jupiter. He saw Saturn,&#8221; Tejas said. &#8220;A tool used differently became the telescope we know today.&#8221;</p>



<p class="wp-block-paragraph">This story illustrates a timeless lesson: transformative breakthroughs often come not from inventing new tools, but from <strong>using existing ones in unexpected ways</strong>. In today’s era of open-source models, <a href="https://shiftmag.dev/how-infobips-mcp-enables-true-agentic-ai-5220/" target="_blank" rel="noreferrer noopener">MCP servers</a>, frameworks like LangFlow, and an unprecedented supply of freely accessible AI technologies, Kumar posed a question to developers that was simple, but profound:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">How are we using these tools and how might we use them differently to achieve more, or even discover entirely new possibilities?</p>
</blockquote>



<h2 class="wp-block-heading"><span id="in-the-age-of-ai-you-need-to-be-creative">In the age of AI you need to be CREATIVE</span></h2>



<p class="wp-block-paragraph">Tejas invited developers to embrace the moment rather than fear it. Never before have engineers had access to such a vast array of <strong>powerful open-source tools</strong>. LangFlow itself, he reminded the audience, is fully MIT-licensed and easy to self-host, letting anyone build scalable agents through a visual interface.</p>



<p class="wp-block-paragraph">But his message went beyond tools or licenses. It was a <strong>call to creativity, a call to agency</strong> &#8211; a reminder for developers to lift their gaze, imagine new possibilities, and see where these tools can take us when used in unexpected ways.</p>


<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1200" height="630" src="https://shiftmag.dev/wp-content/uploads/2025/11/tejas_1.png?x32039" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" style="object-fit:cover;" srcset="https://shiftmag.dev/wp-content/uploads/2025/11/tejas_1.png 1200w, https://shiftmag.dev/wp-content/uploads/2025/11/tejas_1-300x158.png 300w, https://shiftmag.dev/wp-content/uploads/2025/11/tejas_1-1024x538.png 1024w, https://shiftmag.dev/wp-content/uploads/2025/11/tejas_1-768x403.png 768w" sizes="auto, (max-width: 1200px) 100vw, 1200px" /></figure><p>The post <a href="https://shiftmag.dev/its-not-the-ai-its-what-you-do-with-it-7060/">How Developers Can Leverage AI Today</a> appeared first on <a href="https://shiftmag.dev">ShiftMag</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 

Served from: shiftmag.dev @ 2026-09-10 19:55:00 by W3 Total Cache
-->