<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>/@marcus/5-best-practices-for-running-django-in-production/</loc>
<lastmod>2019-01-16T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/8-things-you-need-to-know-to-become-a-devops-engineer/</loc>
<lastmod>2019-01-16T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-automatically-backup-postgres-to-s3-and-cloud/</loc>
<lastmod>2019-01-16T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-prepare-for-the-toptal-interview-and-application/</loc>
<lastmod>2019-01-16T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-restrict-access-with-django-permissions/</loc>
<lastmod>2019-01-16T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-start-a-django-project-with-docker/</loc>
<lastmod>2019-01-16T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/should-i-use-virtualenv-or-docker-containers-with-python/</loc>
<lastmod>2019-01-16T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/7-things-to-know-as-a-senior-software-engineer/</loc>
<lastmod>2019-01-17T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-replicate-postgresql-database-as-masterslave/</loc>
<lastmod>2019-01-17T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-add-social-authentication-to-django/</loc>
<lastmod>2019-01-18T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-use-the-12-factor-app-methodology-in-practice/</loc>
<lastmod>2019-01-18T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-add-ldap-and-active-directory-authentication-to-django/</loc>
<lastmod>2019-01-20T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-store-django-static-and-media-files-on-s3-in-production/</loc>
<lastmod>2019-01-20T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-create-a-hash-table-from-scratch-in-python/</loc>
<lastmod>2019-01-21T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-send-celery-messages-to-remote-worker/</loc>
<lastmod>2019-01-22T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-use-celery-for-scheduled-tasks-and-cronjobs/</loc>
<lastmod>2019-01-22T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/best-practices-for-setting-up-celery-with-django/</loc>
<lastmod>2019-01-23T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-inject-new-docker-tag-into-docker-compose-file/</loc>
<lastmod>2019-01-24T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-run-command-in-background-or-daemon-with-linux/</loc>
<lastmod>2019-01-24T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-split-and-organize-terraform-code-into-modules/</loc>
<lastmod>2019-01-24T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-store-terraform-state-on-s3/</loc>
<lastmod>2019-01-24T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/use-gunicorn-to-serve-your-django-or-flask-wsgi-app/</loc>
<lastmod>2019-01-25T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-do-zero-downtime-deployments-of-docker-containers/</loc>
<lastmod>2019-01-26T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/learn-basics-of-logging-in-python/</loc>
<lastmod>2019-01-27T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/write-unit-tests-with-pythons-unittest-module/</loc>
<lastmod>2019-01-28T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-render-markdown-syntax-as-html-using-python/</loc>
<lastmod>2019-01-29T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/deep-dive-guide-into-python-type-hints-and-type-checks/</loc>
<lastmod>2019-01-30T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-squash-and-merge-django-migrations/</loc>
<lastmod>2019-01-30T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-change-name-of-django-application/</loc>
<lastmod>2019-01-31T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/djangos-class-based-views-vs-function-based-views/</loc>
<lastmod>2019-02-01T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/generate-thumbnails-automatically-in-django-with-sorl-thumbnail/</loc>
<lastmod>2019-02-05T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/deep-dive-into-python-mixins-and-multiple-inheritance/</loc>
<lastmod>2019-02-07T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/deep-dive-into-building-a-rest-api/</loc>
<lastmod>2019-02-09T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-scalable-are-websites-built-in-django-framework/</loc>
<lastmod>2019-02-11T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-unit-test-functions-without-return-statements-in-python/</loc>
<lastmod>2019-02-17T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/add-new-non-null-foreign-key-to-existing-django-model/</loc>
<lastmod>2019-02-18T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/review-of-creating-process-flows-using-django-viewflow/</loc>
<lastmod>2019-02-22T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/prevent-terraform-from-recreating-or-deleting-resource/</loc>
<lastmod>2019-02-24T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/68-times-faster-with-django-performance-optimization/</loc>
<lastmod>2019-02-27T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/code-review-best-practices-while-not-being-an-ass/</loc>
<lastmod>2019-02-28T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/python-tips-and-tricks-for-path-and-url-parsing/</loc>
<lastmod>2019-03-02T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/celery-callbacks-when-tasks-succeed-or-fail-using-links/</loc>
<lastmod>2019-03-09T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/prepare-for-the-software-engineering-phone-interview/</loc>
<lastmod>2019-03-09T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-automatically-retry-failed-tasks-with-celery/</loc>
<lastmod>2019-03-14T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-pass-complex-data-types-to-celery-tasks/</loc>
<lastmod>2019-03-29T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/postgres-autovacuum-vacuum-and-analyze-explained/</loc>
<lastmod>2019-06-10T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/toptal-review-my-first-year-as-a-toptal-freelancer/</loc>
<lastmod>2019-06-28T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/load-test-your-django-website-using-locustio/</loc>
<lastmod>2019-07-01T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-optimize-docker-images-for-smaller-size-and-speed/</loc>
<lastmod>2019-07-31T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/why-you-should-use-docker-a-complete-guide/</loc>
<lastmod>2019-07-31T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/generate-python-unit-test-flake8-reports-for-junit/</loc>
<lastmod>2019-08-02T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/how-to-mock-and-unit-test-with-pandas/</loc>
<lastmod>2019-08-02T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/a-complete-guide-to-cicd-pipelines-with-circleci-docker-and-terraform/</loc>
<lastmod>2019-10-14T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/@marcus/automatically-publish-your-documentation-to-github-pages-with-your-cicd-pipeline/</loc>
<lastmod>2019-11-18T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/python/2020/04/23/how-to-make-lazy-python.html</loc>
<lastmod>2020-04-23T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/python/2020/04/23/how-to-make-singleton-python.html</loc>
<lastmod>2020-04-23T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/python/2021/04/09/launching-new-sideproject.html</loc>
<lastmod>2021-04-09T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/python,/data/science/2021/05/11/productionise-data-science-code.html</loc>
<lastmod>2021-05-11T00:00:00+00:00</lastmod>
</url>
<url>
<loc>/</loc>
</url>
<url>
<loc>/page2/</loc>
</url>
<url>
<loc>/page3/</loc>
</url>
<url>
<loc>/page4/</loc>
</url>
<url>
<loc>/page5/</loc>
</url>
<url>
<loc>/page6/</loc>
</url>
</urlset>
