1<!DOCTYPE html> 2<html> 3<head> 4 5 <link rel="stylesheet" type="text/css" href="/assets/built/style.css" /> 6 7 <!-- Document Settings --> 8 <meta charset="utf-8" /> 9 <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 10 11 <!-- Base Meta --> 12 <!-- dynamically fixing the title for tag/author pages --> 13 14 15 16 <title>Hey! I am Jorge ð</title> 17 <meta name="HandheldFriendly" content="True" /> 18 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 19 <!-- Styles'n'Scripts --> 20 <link rel="stylesheet" type="text/css" href="/assets/built/screen.css" /> 21 <link rel="stylesheet" type="text/css" href="/assets/built/screen.edited.css" /> 22 <link rel="stylesheet" type="text/css" href="/assets/built/syntax.css" /> 23 24 <link rel="preconnect" href="https://fonts.googleapis.com"> 25 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 26 <link href="https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap" rel="stylesheet">
27 <link href="https://fonts.googleapis.com/css?family=Fira+Code:500&display=swap" rel="stylesheet"> 28 <link href="https://fonts.googleapis.com/css?family=Noto+Sans&display=swap" rel="stylesheet"> 29 <link href="https://fonts.googleapis.com/css?family=Work+Sans&display=swap" rel="stylesheet"> 30 31 <link rel="preconnect" href="https://fonts.googleapis.com"> 32 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 33 <link href="https://fonts.googleapis.com/css2?family=Quicksand&display=swap" rel="stylesheet"> 34 35 <!-- highlight.js --> 36 <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css"> 37 <style>.hljs { background: none; }</style> 38 39 <!--[if IE]> 40 <style> 41 p, ol, ul{ 42 width: 100%; 43 } 44 blockquote{ 45 width: 100%; 46 } 47 </style> 48 <![endif]--> 49 50 <!-- This tag outputs SEO meta+structured data and other important settings --> 51 <meta name="description" content="You'll find all my tech posts here." /> 52 <link rel="shortcut icon" href="https://jorgecastilloprz.github.io/assets/images/favicon.png" type="image/png" /> 53 <link rel="canonical" href="https://jorgecastilloprz.github.io/about/" /> 54 <meta name="referrer" content="no-referrer-when-downgrade" /> 55 56 <!--title below is coming from _includes/dynamic_title--> 57 <meta property="og:site_name" content="ð¨âð» Jorge Castillo" /> 58 <meta property="og:type" content="website" /> 59 <meta property="og:title" content="Hey! I am Jorge ð" /> 60 <meta property="og:description" content="I'm an Android developer currently working for [47 Degrees](https://www.47deg.com) as Android & Kotlin Tech Lead. I am also part of the [Arrow](https://arrow-kt.io) maintainers team and a speaker. > I insist in good practices and pragmatic reasoning. ### Resume I've coded Android apps for ~10 years until today. If you are" /> 61 <meta property="og:url" content="https://jorgecastilloprz.github.io/about/" /> 62 <meta property="og:image" content="https://jorgecastilloprz.github.io/assets/images/blog-cover-dark.png" /> 63 <meta property="article:publisher" content="https://www.facebook.com/" /> 64 <meta property="article:author" content="https://www.facebook.com/" /> 65 <meta property="article:published_time" content="" /> 66 <meta property="article:modified_time" content="" /> 67 <meta name="twitter:card" content="summary_large_image" /> 68 <meta name="twitter:title" content="Hey! I am Jorge ð" /> 69 <meta name="twitter:description" content="I'm an Android developer currently working for [47 Degrees](https://www.47deg.com) as Android & Kotlin Tech Lead. I am also part of the [Arrow](https://arrow-kt.io) maintainers team and a speaker. > I insist in good practices and pragmatic reasoning. ### Resume I've coded Android apps for ~10 years until today. If you are" /> 70 <meta name="twitter:url" content="https://jorgecastilloprz.github.io/" /> 71 <meta name="twitter:image" content="https://jorgecastilloprz.github.io/assets/images/blog-cover-dark.png" /> 72 <meta name="twitter:label1" content="Written by" /> 73 <meta name="twitter:data1" content="ð¨âð» Jorge Castillo" /> 74 <meta name="twitter:site" content="@jorgecastillopr" /> 75 <meta name="twitter:creator" content="@jorgecastillopr" /> 76 <meta property="og:image:width" content="1400" /> 77 <meta property="og:image:height" content="933" /> 78 79
79<script type="application/ld+json"> 80{ 81 "@context": "https://schema.org", 82 "@type": "Website", 83 "publisher": { 84 "@type": "Organization", 85 "name": "ð¨âð» Jorge Castillo", 86 "logo": "https://jorgecastilloprz.github.io/" 87 }, 88 "url": "https://jorgecastilloprz.github.io/about/", 89 "image": { 90 "@type": "ImageObject", 91 "url": "https://jorgecastilloprz.github.io/assets/images/blog-cover-dark.png", 92 "width": 2000, 93 "height": 666 94 }, 95 "mainEntityOfPage": { 96 "@type": "WebPage", 97 "@id": "https://jorgecastilloprz.github.io/about/" 98 }, 99 "description": "I'm an Android developer currently working for [47 Degrees](https://www.47deg.com) as Android & Kotlin Tech Lead. I am also part of the [Arrow](https://arrow-kt.io) maintainers team and a speaker. > I insist in good practices and pragmatic reasoning. ### Resume I've coded Android apps for ~10 years until today. If you are" 100} 101 </script>
101 102 103 <!--
103<script type="text/javascript" src="https://demo.ghost.io/public/ghost-sdk.min.js?v=724281a32e"></script>
103 104
104<script type="text/javascript"> 105 ghost.init({ 106 clientId: "ghost-frontend", 107 clientSecret: "f84a07a72b17" 108 }); 109 </script>
109 --> 110 111 <meta name="generator" content="Jekyll 3.6.2" /> 112 <link rel="alternate" type="application/rss+xml" title="Hey! I am Jorge ð" href="/feed.xml" /> 113 114 <style> 115 .highlighter-rouge, .highlight, code { 116 width: 100%; 117 } 118 </style> 119 120 121</head> 122<body class="page-template"> 123 124 <div class="site-wrapper"> 125 <!-- All the main content gets inserted here, index.hbs, post.hbs, etc --> 126 <!-- < default --> 127<!-- The tag above means: insert everything in this file 128into the {body} of the default.hbs template --> 129 130<!-- The big featured header, it uses blog cover image as a BG if available --> 131<header class="site-header outer"> 132 <div class="inner"> 133 <nav class="site-nav"> 134 <div class="site-nav-left"> 135 136 137 <a class="site-nav-logo" href="https://jorgecastilloprz.github.io/">ð¨âð» Jorge Castillo</a> 138 139 140 141 <ul class="nav" role="menu"> 142 <li class="nav-animations" role="menuitem" style="margin-left: 14px;"><a class="colorWhite" href="/course/">Course ð¬</a></li> 143 <li class="nav-androidcourse" style="margin-left: 10px; margin-right: 10px;" role="menuitem"><a class="colorOnHighlight" href="/book/">Book ð Jetpack Compose internals ð¥</a></li> 144 <li class="nav-about" role="menuitem"><a class="menuLink" href="/about/">About</a></li> 145</ul> 146 147 148 </div> 149 <div class="site-nav-right"> 150 <div class="social-links"> 151 152 <a class="social-link social-link-tw" href="https://twitter.com/jorgecastillopr" target="_blank" rel="noopener"><img width=26 src="../assets/images/twitter.svg"/></a> 153 154 155 <a class="social-link social-link-tw" href="https://androiddev.social/@jorge" target="_blank" rel="noopener"><img width=26 src="../assets/images/mastodon.svg"/></a> 156 157 </div> 158 </div> 159</nav> 160 161 </div> 162</header> 163 164<!-- Everything inside the #post tags pulls data from the post --> 165<!-- #post --> 166 167<main id="site-main" class="site-main outer" role="main"> 168 <div class="inner"> 169 170 <article class="post-full post page no-image"> 171 172 <header class="post-full-header"> 173 <h1 class="post-full-title">Hey! I am Jorge ð</h1> 174 </header> 175 176 177 178 <section class="post-full-content"> 179 <p>Iâm an Android developer currently working for <a href="https://www.47deg.com">47 Degrees</a> as Android & Kotlin Tech Lead. I am also part of the <a href="https://arrow-kt.io">Arrow</a> maintainers team and a speaker.</p> 180 181<p><img src="../assets/images/portrait.png" alt="My portrait pic" style="width:256px;height:256px" /></p> 182 183<blockquote> 184 <p>I insist in good practices and pragmatic reasoning.</p> 185</blockquote> 186 187<h3 id="resume">Resume</h3> 188 189<p>Iâve coded Android apps for ~10 years until today. If you are interested on hiring me, <a href="../assets/Resume.pdf">here you have my resume</a>.</p> 190 191<p><strong>Contact</strong></p> 192 193<p>You can find me <a href="https://www.twitter.com/JorgeCastilloPR">on Twitter</a>, where I share all my experiences as a developer. Also please, feel free to contact <a href="mailto:[email protected]">by email</a> if you want to.</p> 194 195 </section> 196 197 </article> 198 199 </div> 200</main> 201 202<!-- /post --> 203 204<!-- The #contentFor helper here will send everything inside it up to the matching #block helper found in default.hbs -->
205<script> 206$(function() { 207 var $postContent = $(".post-full-content"); 208 $postContent.fitVids(); 209}); 210</script>
210 211 212 213 214 <!-- Previous/next page links - displayed on every page --> 215 216 217 <!-- The footer at the very bottom of the screen --> 218 <footer class="site-footer outer"> 219 <div class="site-footer-content inner"> 220 <section class="copyright"><a href="https://jorgecastilloprz.github.io/">ð¨âð» Jorge Castillo</a> © 2025</section> 221 <section class="poweredby"> 222 <a rel="me" href="https://androiddev.social/@jorge">Mastodon</a> 223 </section> 224 <nav class="site-footer-nav"> 225 <a href="/">Latest Posts</a> 226 227 <a href="https://twitter.com/jorgecastillopr" target="_blank" rel="noopener">Twitter</a> 228 <a href="https://ghost.org" target="_blank" rel="noopener">Ghost</a> 229 </nav> 230 </div> 231 </footer> 232 233 </div> 234 235 <!-- highlight.js --> 236
236<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.10.0/components/prism-abap.min.js"></script>
236 237
237<script>$(document).ready(function() { 238 $('pre code').each(function(i, block) { 239 hljs.highlightBlock(block); 240 }); 241 });</script>
241 242 243 <!-- jQuery + Fitvids, which makes all video embeds responsive --> 244
244<script 245 src="https://code.jquery.com/jquery-3.2.1.min.js" 246 integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" 247 crossorigin="anonymous"> 248 </script>
248 249
249<script type="text/javascript" src="/assets/js/jquery.fitvids.js"></script>
249 250 251 252 <!-- Paginator increased to "infinit" in _config.yml --> 253 <!-- if paginator.posts --> 254 <!--
254<script> 255 var maxPages = parseInt(''); 256 </script>
256 257
257<script src="/assets/js/infinitescroll.js"></script>
257 --> 258 <!-- /endif --> 259 260 261 262 263 <!-- Add Google Analytics --> 264 <!-- Google Analytics Tracking code --> 265
265<script>
vendor: 339 bytes, lines 265-271
265 266 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 267 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 268 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 269 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 270 271 ga('create', '
271UA-142413286-1
vendor: 40 bytes, lines 271-274
271', 'auto'); 272 ga('send', 'pageview'); 273 274
274</script>
274 275 276<!-- 100% privacy-first analytics -->
277<script async src="https://scripts.simpleanalyticscdn.com/latest.js"></script>
277 278 279 280
280<script defer data-domain="jorgecastillo.dev" src="https://plausible.io/js/script.js"></script>
280 281 282 <!-- The #block helper will pull in data from the #contentFor other template files. In this case, there's some JavaScript which we only want to use in post.hbs, but it needs to be included down here, after jQuery has already loaded. --> 283 284
284<script> 285$(function() { 286 var $postContent = $(".post-full-content"); 287 $postContent.fitVids(); 288}); 289</script>
289 290 291 292 293 <!-- Ghost outputs important scripts and data with this tag - it should always be the very last thing before the closing body tag --> 294 <!-- ghost_foot --> 295 296</body> 297</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.