<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://malavnaik99.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://malavnaik99.github.io/" rel="alternate" type="text/html" /><updated>2026-10-15T15:31:12+00:00</updated><id>https://malavnaik99.github.io/feed.xml</id><title type="html">Malav Naik</title><subtitle>Malav Naik is a data analyst and data engineer in Dublin, Ireland, building with SQL, Python, Azure and generative AI, and writing about data engineering, GenAI and trust &amp; safety.</subtitle><author><name>Malav Naik</name></author><entry><title type="html">Migrating On-Prem SQL Server to Azure SQL PaaS: How We Cut Infrastructure Costs by 25%</title><link href="https://malavnaik99.github.io/blog/azure-sql-migration-25-percent/" rel="alternate" type="text/html" title="Migrating On-Prem SQL Server to Azure SQL PaaS: How We Cut Infrastructure Costs by 25%" /><published>2026-10-15T00:00:00+00:00</published><updated>2026-10-15T00:00:00+00:00</updated><id>https://malavnaik99.github.io/blog/azure-sql-migration-25-percent</id><content type="html" xml:base="https://malavnaik99.github.io/blog/azure-sql-migration-25-percent/"><![CDATA[<p><img src="/images/malav-naik-london-skyline.jpg" alt="Malav Naik on a rooftop with a city skyline behind – Migrating On-Prem SQL Server to Azure SQL PaaS: How We Cut Infrastructure Costs by 25%" width="960" height="1280" /></p>

<p>At S&amp;P Global Market Intelligence I helped migrate on-premise SQL Server databases to Azure SQL PaaS. Our team moved between 10 and 50 databases to Azure SQL Managed Instance. The headline result was a reduction in infrastructure costs of about 25%. The more important result was that the people using those databases barely noticed it happened.</p>

<p>Here’s what I learned about doing a migration like that well.</p>

<h2 id="1-inventory-before-you-plan">1. Inventory before you plan</h2>

<p>Before choosing a target, list everything that touches the database: ETL jobs, reports, linked servers, SQL Agent jobs, cross-database queries, CLR assemblies. PaaS options don’t support every on-prem feature in the same way, and you want to find the gaps on a spreadsheet, not in production.</p>

<p>Microsoft’s Data Migration Assistant and Azure Migrate help here, but they don’t know about the Excel workbook someone in finance refreshes every Monday. Talk to users.</p>

<h2 id="2-pick-the-right-paas-flavour">2. Pick the right PaaS flavour</h2>

<p>Azure SQL Database and Azure SQL Managed Instance trade compatibility against simplicity. Managed Instance keeps more instance-level features (Agent jobs, cross-database queries), so it suits lift-and-shift. Single databases are simpler and can be cheaper, but may need refactoring. Decide per workload, not per estate. We went with Managed Instance, which kept most instance-level features in place and meant fewer changes to existing code.</p>

<h2 id="3-right-size-dont-copy">3. Right-size, don’t copy</h2>

<p>Most of the savings came from not paying for capacity we didn’t use. On-prem servers are sized for peak load plus growth plus fear. In the cloud you can measure actual usage and scale. Look at real CPU, memory and IO over several weeks before choosing service tiers.</p>

<h2 id="4-migrate-in-waves">4. Migrate in waves</h2>

<p>Start with low-risk databases: development, reporting copies, internal tools. Each wave teaches you something about networking, permissions or performance that makes the next wave smoother.</p>

<h2 id="5-test-the-boring-things">5. Test the boring things</h2>

<p>Performance gets attention. In our migration, the real problems came from elsewhere:</p>

<ul>
  <li>Connection strings hard-coded in old applications and reports</li>
  <li>SSIS packages and SQL Agent jobs that needed reworking to run against Azure</li>
  <li>Jobs that relied on local file paths on the old servers</li>
</ul>

<p>Also worth checking: time zone and collation differences, firewall rules and private endpoints.</p>

<h2 id="6-define-done-with-the-users">6. Define “done” with the users</h2>

<p>A migration isn’t finished when the data moves. It’s finished when every report, job and application works as before and the old servers are switched off. Agree that checklist with stakeholders up front.</p>

<h2 id="the-takeaway">The takeaway</h2>

<p>Cloud migration savings come mostly from right-sizing and retiring infrastructure. Keeping users happy comes from inventory, testing and communication. Neither is glamorous, and both matter more than the migration tooling.</p>]]></content><author><name>Malav Naik</name></author><category term="azure" /><category term="sql" /><category term="dataengineering" /><category term="cloud" /><summary type="html"><![CDATA[Lessons from moving production SQL Server databases to Azure SQL PaaS without disrupting the people who depend on them.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://malavnaik99.github.io/images/malav-naik-london-skyline.jpg" /><media:content medium="image" url="https://malavnaik99.github.io/images/malav-naik-london-skyline.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">From Surat to Dublin: 10 Years in Data, and Why I’m Just Getting Started</title><link href="https://malavnaik99.github.io/blog/from-surat-to-dublin/" rel="alternate" type="text/html" title="From Surat to Dublin: 10 Years in Data, and Why I’m Just Getting Started" /><published>2026-10-15T00:00:00+00:00</published><updated>2026-10-15T00:00:00+00:00</updated><id>https://malavnaik99.github.io/blog/from-surat-to-dublin</id><content type="html" xml:base="https://malavnaik99.github.io/blog/from-surat-to-dublin/"><![CDATA[<p><img src="/images/malav-naik-msc-graduation-convention-centre.jpg" alt="Malav Naik in graduation gown outside a glass building in Dublin – From Surat to Dublin: 10 Years in Data, and Why I'm Just Getting Started" width="1200" height="1599" /></p>

<p>In 2015 I finished a Bachelor of Computer Applications in Gujarat and took my first job doing SEO keyword research. Ten years later I hold an MSc in Data Analytics from National College of Ireland, I’ve built data platforms for a global financial information company, and I work on platform integrity operations in Dublin.</p>

<p>This is the first post in a series where I’ll write about what I’ve learned along the way: data engineering, generative AI, and the less glamorous work of keeping online platforms safe.</p>

<h2 id="the-early-years-cleaning-data-by-hand">The early years: cleaning data by hand</h2>

<p>My first data role was at Bright Info Solutions in Ahmedabad. Most of the work was unglamorous: pulling data with SQL, cleaning it in Excel and Python, building weekly reports. It taught me the lesson every analyst learns early. <strong>Most of the job is making data trustworthy before anyone looks at a chart.</strong></p>

<h2 id="building-platforms-at-scale">Building platforms at scale</h2>

<p>From 2019 to 2024 I worked at S&amp;P Global Market Intelligence as a data analyst and ETL developer. I built SSIS pipelines over multi-million-record financial datasets, designed data models for analytics, and helped migrate on-premise SQL Server databases to Azure SQL PaaS. That migration cut infrastructure costs by about 25%.</p>

<p>What I took from those years: good data engineering is invisible. When it works, nobody notices. When it breaks, everyone does.</p>

<h2 id="starting-again-in-ireland">Starting again in Ireland</h2>

<p>In 2024 I moved to Dublin for a master’s. Going back to study after nine years of industry work was humbling. Modules in machine learning, deep learning and generative AI showed me how fast the field had moved. My dissertation combined knowledge graphs and prompt engineering, and my main project, SkillBot, paired a fine-tuned GPT-3.5 model with a 2.3-million-triple knowledge graph using retrieval-augmented generation.</p>

<h2 id="where-i-am-now">Where I am now</h2>

<p>Today I work in platform integrity, analysing complex escalations with AI-assisted tools. It sits where my two interests meet: data and AI used to make platforms safer.</p>

<h2 id="why-write-in-public">Why write in public?</h2>

<p>Three reasons:</p>

<ol>
  <li><strong>Writing forces clarity.</strong> If I can’t explain something simply, I don’t understand it yet.</li>
  <li><strong>Dublin is one of the world’s great tech hubs.</strong> I want to contribute to its data and AI community, not just work in it.</li>
  <li><strong>Accountability.</strong> Publishing every week keeps me learning.</li>
</ol>

<p>Over the coming months I’ll post about Azure migrations, RAG evaluation, knowledge graphs, content moderation metrics, and the career lessons in between. If any of that interests you, follow along. I’d love to hear what you’re working on too.</p>]]></content><author><name>Malav Naik</name></author><category term="career" /><category term="data" /><category term="ai" /><category term="dublin" /><summary type="html"><![CDATA[A decade of data work across India and Ireland, what changed along the way, and where I'm heading next.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://malavnaik99.github.io/images/malav-naik-msc-graduation-convention-centre.jpg" /><media:content medium="image" url="https://malavnaik99.github.io/images/malav-naik-msc-graduation-convention-centre.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>