[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"doc-seo-256466-105":3,"detail-sidebar-cat-1-en-105":81,"doc-detail-256466-en":126},{"code":4,"msg":5,"data":6},0,"ok",{"site_id":7,"language":8,"slug":9,"title":10,"keywords":11,"description":12,"schema_data":13,"social_meta":74,"head_meta":76,"extra_data":78,"updated_unix":80},105,"en","john-bokma-senior-perl-developer-resume","John Bokma - Senior Perl Developer Resume","","Senior Perl Developer John Bokma, based in the Netherlands, presents a career spanning over 30 years with strong focus on web scraping, data wrangling, and automation. The resume highlights Modern Perl advocacy, extensive unit and integration testing, and performance improvements such as reducing import runtime from hours to minutes using SQLite. Experience covers microservices and middleware maintenance, web crawling and security data processing, XML/CSV design and validation, and NGINX/HTTPS documentation, alongside education and professional courses in algorithms, functional programming, and big data.",{"@graph":14,"@context":73},[15,34,56],{"@type":16,"itemListElement":17},"BreadcrumbList",[18,23,27,31],{"item":19,"name":20,"@type":21,"position":22},"https://docshare.wps.com","Home","ListItem",1,{"item":24,"name":25,"@type":21,"position":26},"https://docshare.wps.com/template/","Template",2,{"item":28,"name":29,"@type":21,"position":30},"https://docshare.wps.com/template/resumes/","Resumes",3,{"item":32,"name":10,"@type":21,"position":33},"https://docshare.wps.com/template/john-bokma-senior-perl-developer-resume/256466/",4,{"url":32,"name":10,"@type":35,"image":36,"author":41,"headline":10,"publisher":44,"fileFormat":47,"inLanguage":8,"description":12,"dateModified":48,"datePublished":49,"encodingFormat":47,"isAccessibleForFree":50,"interactionStatistic":51},"DigitalDocument",{"url":37,"@type":38,"width":39,"height":40},"https://docshare.wps.com/thumbnails/john-bokma-senior-perl-developer-resume/256466.png","ImageObject",442,249,{"name":42,"@type":43},"Melati","Person",{"url":19,"name":45,"@type":46},"DocShare","Organization","application/pdf","2026-10-21","2026-09-13",true,{"@type":52,"interactionType":53,"userInteractionCount":55},"InteractionCounter",{"@type":54},"ViewAction",5,{"@type":57,"mainEntity":58},"FAQPage",[59,65,69],{"name":60,"@type":61,"acceptedAnswer":62},"What technical areas is John Bokma most experienced in?","Question",{"text":63,"@type":64},"He focuses on web scraping, data wrangling, and automation, with expertise across Perl and related technologies such as MySQL, NGINX/Apache, XML/XSLT, and RelaxNG.","Answer",{"name":66,"@type":61,"acceptedAnswer":67},"How does the resume show his testing and documentation practices?",{"text":68,"@type":64},"He emphasizes writing unit and integration tests, using pre-commit and perlcritic practices, and producing technical documentation and specifications (including Org Mode materials).",{"name":70,"@type":61,"acceptedAnswer":71},"What achievements are highlighted in his recent roles?",{"text":72,"@type":64},"He improved import performance significantly by switching to SQLite, built a DAG for Apache Airflow to update database tables, and extended provisioning microservices with added functionality.","https://schema.org",{"og:url":32,"og:type":75,"og:title":10,"og:site_name":45,"og:description":12},"article",{"robots":77,"canonical":32},"index,follow",{"doc_id":79,"site_id":7},256466,1791284896,{"code":4,"msg":82,"data":83},"success",[84,89,93,98,103,108,113,118,122],{"id":85,"doc_module":22,"doc_module_name":25,"category_name":86,"show_sort_weight":87,"slug":88},11,"Presentations",90,"presentations",{"id":90,"doc_module":22,"doc_module_name":25,"category_name":29,"show_sort_weight":91,"slug":92},12,80,"resumes",{"id":94,"doc_module":22,"doc_module_name":25,"category_name":95,"show_sort_weight":96,"slug":97},14,"Invoices",70,"invoices",{"id":99,"doc_module":22,"doc_module_name":25,"category_name":100,"show_sort_weight":101,"slug":102},15,"Posters",60,"posters",{"id":104,"doc_module":22,"doc_module_name":25,"category_name":105,"show_sort_weight":106,"slug":107},16,"Social Media",50,"social-media",{"id":109,"doc_module":22,"doc_module_name":25,"category_name":110,"show_sort_weight":111,"slug":112},17,"Forms",40,"forms",{"id":114,"doc_module":22,"doc_module_name":25,"category_name":115,"show_sort_weight":116,"slug":117},18,"Letters",30,"letters",{"id":119,"doc_module":22,"doc_module_name":25,"category_name":120,"show_sort_weight":55,"slug":121},21,"Paper Templates","papers-templates",{"id":123,"doc_module":22,"doc_module_name":25,"category_name":124,"show_sort_weight":4,"slug":125},158,"General","general-158",{"code":4,"msg":82,"data":127},{"doc_id":79,"user_id":128,"nickname":42,"user_avatar":129,"doc_module":22,"category_id":90,"category_name":29,"doc_title":10,"doc_description":12,"doc_content":130,"file_id":131,"file_url":132,"file_type":133,"file_size":134,"view_count":55,"is_deleted":4,"is_public":22,"is_downloadable":22,"audit_status":22,"page_count":30,"language":135,"language_code":8,"site_id":7,"html_lang":8,"table_of_contents":136,"faqs":137,"seo_title":138,"seo_description":12,"update_tm":139,"read_time":22},962085570644,"https://ap-avatar.wpscdn.com/davatar_994ba38a5ba835b3df7d355c54d3ed8d","John Bokma  \nSenior Perl Developer located in the Netherlands  \nEmail: [contact@johnbokma.com](contact@johnbokma.com)  \nGitHub: [https://github.com/john-bokma/](https://github.com/john-bokma/)  \nPersonal Blog: [http://johnbokma.com/blog/](http://johnbokma.com/blog/)  \nLast Updated: November 13, 2025  \nSummary  \nI am a Senior Perl Developer with over 30 years of experience, including expertise in web scraping, data wrangling, Git, MySQL, NGINX, the Apache [HTTP](HTTP) Server, Python, XSLT, XML, RelaxNG, HTML, and CSS.  \nI’m an active proponent of Modern Perl. I like writing technical documentation and unit tests. I prefer toreuse tested code as much as possible, hence I often start a project by researching available solutions on CPAN.  \nExperience as Senior Perl Developer January 2022-present; employed  \n– Maintenance of existing middleware code base (Perl) .  \n– Writing unit tests and integration tests (Perl) .  \n– Greatly reduced the runtime (hours to minutes) of an import program by using SQLite (Perl) .  \n– Wrote a DAG for Apache Airflow to download data and update a database table accordingly (Python) .  \n– Maintenance and extension of existing microservices, including the writing of unit tests (Java) .  \n– Added CGNAT to the provisioning chain (Perl) .  \n– Added support for “Free modem choice” to the provisioning chain (Perl) .  \n– Wrote a Python program to add in accounts in bulk from a CSV file generated by Excel.  \n– Added DataDog tracing to various cron job scripts (Perl) .  \n– Wrote an article on perlcritic and how to install and use the pre-commit framework.  \n[Peppels.net](Peppels.net)  \nJanuary 2019-August 2021; remote, part-time  \n– Maintenance of existing code base; Perl, JavaScript, Template Toolkit, HTML and CSS3 .  \n– Turning graphic designs into responsive HTML and CSS3 .  \n– Complete redesign of the existing login page for both mobile and desktop.  \n– Adding additional PDF printing support.  \n– Adding support for portfolio pages for both mobile and desktop.  \n– Testing and adjusting mobile design.  \n– (Re)writing MySQL queries.  \nSF Metrics  \nAugust 2015-October 2019; remote, part-time  \n– Data conversion: developed a program to import a “JSON per line” database dump into a MySQL database. I reverse engineered the file format, designed the 70+ MySQL database tables, and added logic to avoid duplicate code.  \n– Developed a web crawler that downloads XML data, verifies this data, gathers some statistics, and stores desired data and statistics in a MySQL database. I am also reponsible for writing all the technical documentation, specifications, and example SQL queries.  \n– Web scraping: developed several tools for analyzing search engine result pages (SERPs) .  \n– Porting Perl programs to the Go programming language.  \nJohn Bokma 2  \n– Developed Perl modules for storing data in Amazon’s S3 .  \nRedSocks - Malicious Threat Detection  \nFebruary 2013-December 2015; remote, part-time  \n– Developed several web crawling Perl programs for gathering security related data, each crawler exporting downloaded data as a CSV file.  \n– Developed a Perl program that downloads security related data from several sources, verifies, cleans, normalizes the data, and export it as an XML file (data conversion) .  \n– Developed a Perl program that post-processes the exported XML data to remove duplicate entries and overlapping IP ranges using a binary search algorithm.  \n– Developed a Perl program that parses log files (Log4Perl) generated by aforementioned programs, creates reports, and emails those reports.  \n– Developed a Dancer2 web application to manually enter IP ranges and related security data and store this information into a MySQL database.  \n– Configured virtual machines for each of the Perl programs, including designing firewall rules, and allowing access via rsync and [HTTPS](HTTPS) in a secure manner where required. Documented the entire process of configuration and installation in great detail.  \n– Wrote documentation on","cbCaigGG9uFMWJQT","https://ap.wps.com/l/cbCaigGG9uFMWJQT","pdf",189033,"English","# Summary\n# Experience\n## John Bokma\n# Education\n# Courses\n# GitHub\n# Miscellaneous","[{\"question\":\"What technical areas is John Bokma most experienced in?\",\"answer\":\"He focuses on web scraping, data wrangling, and automation, with expertise across Perl and related technologies such as MySQL, NGINX/Apache, XML/XSLT, and RelaxNG.\"},{\"question\":\"How does the resume show his testing and documentation practices?\",\"answer\":\"He emphasizes writing unit and integration tests, using pre-commit and perlcritic practices, and producing technical documentation and specifications (including Org Mode materials).\"},{\"question\":\"What achievements are highlighted in his recent roles?\",\"answer\":\"He improved import performance significantly by switching to SQLite, built a DAG for Apache Airflow to update database tables, and extended provisioning microservices with added functionality.\"}]","John Bokma - Senior Perl Developer Resume | PDF",1789304201]