<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Herbert Henrique on Medium]]></title>
        <description><![CDATA[Stories by Herbert Henrique on Medium]]></description>
        <link>https://medium.com/@herberthenrique?source=rss-c79a4e92954f------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*PN44RZDNBWTjOdxJwto-tg.jpeg</url>
            <title>Stories by Herbert Henrique on Medium</title>
            <link>https://medium.com/@herberthenrique?source=rss-c79a4e92954f------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 13:59:09 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@herberthenrique/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[6 Reasons why my team decided to use Golang]]></title>
            <link>https://medium.com/inside-sumup/6-reasons-why-my-team-decided-to-use-golang-abb861416060?source=rss-c79a4e92954f------2</link>
            <guid isPermaLink="false">https://medium.com/p/abb861416060</guid>
            <category><![CDATA[engineering]]></category>
            <category><![CDATA[fintech]]></category>
            <category><![CDATA[tech]]></category>
            <category><![CDATA[sumup-brasil]]></category>
            <category><![CDATA[golang]]></category>
            <dc:creator><![CDATA[Herbert Henrique]]></dc:creator>
            <pubDate>Tue, 16 Jun 2020 12:50:17 GMT</pubDate>
            <atom:updated>2020-07-17T17:21:19.805Z</atom:updated>
            <content:encoded><![CDATA[<h3>6 reasons why my team decided to use Golang</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/768/0*RGrJGmKq98Ef7-mC.jpg" /><figcaption>Photo and art by <a href="https://tomarrell.com/">Tom Arrell</a>, commercial usage not allowed</figcaption></figure><p>Hi! My name is Herbert and I’m a software engineer at SumUp. We’re a multi-language company, so we use a lot of languages in our ecosystem. These include Golang, Ruby, Elixir, Erlang, Javascript (Node, React), Swift, Kotlin, and Java.</p><p>My team worked extensively with Ruby for over a year. When the time came for us to create a new microservice, we had to decide whether to stick with Ruby or change to a new language. Even with all the existing languages in our ecosystem, we decided to try something new, because we spotted an opportunity to solve problems and grow our customer base.</p><p>Here are the main reasons why we ultimately chose Golang.</p><h3>1 — Engineers want to use it</h3><p>SumUp is a fast-growing company, and we’re always on the lookout for new engineers. As such, we needed to choose a language that people want to use.</p><p>Go was among the most wanted languages in 2019&#39;s <a href="https://insights.stackoverflow.com/survey/2019#most-loved-dreaded-and-wanted">Stack Overflow Survey</a>, so we were confident that potential new team members would like to work with it. It’s also very simple to onboard engineers and get them productive early with Go.</p><h3>2 — It’s easy to learn</h3><p>Go is one of the easiest languages to learn, with only <a href="https://golang.org/ref/spec#Keywords">25 keywords</a>. The docs are good, and there’s plenty of great material like <a href="https://tour.golang.org/welcome/1">A tour of Go</a>, which flattens the learning curve even further.</p><p>Our developers had a lot of experience with the Object-Oriented Paradigm. If we’d chosen Elixir, for example, a change to functional programming would make the learning curve steep for the team.</p><p>Go is very explicit, making it clearer and easier to understand. There are no unnecessary complexities.</p><p>Our team was so enthusiastic about learning Go that we hosted a Go Meetup in São Paulo, to talk about our initial experiences.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/0*xNO38ukVBE1rYjNy.jpg" /><figcaption><a href="https://www.linkedin.com/in/isabela-comegna-dos-santos/"><em>Isabela Comegna</em></a><em> talking about our team experience with Go at the GoLang SP Meetup</em></figcaption></figure><h3>3 — It’s a compiled, statically-typed language.</h3><p>I’ll tell you a secret if you don’t currently work with a typed language: You’ll either love it or hate it.</p><p>If you initially hate it, rest assured that you’ll eventually begin to see the benefits.</p><p>At the end of the day, software’s biggest cost lies in maintenance rather than the time it takes to create the code. Typed languages make it much easier for you to understand how the software is working. And statically-typed languages help you identify errors early on in the development process.</p><p>Static typing usually results in compiled code that executes quickly. The compiler knows the exact data types that are in use, so it can produce optimized machine code.</p><h3>4 — Go’s tooling is helpful and opinionated</h3><p>If you install Go, you’ll have already lint, format, and test tools.</p><p>Use gofmt or goimports in your code, and you&#39;ll instantly have all the settings and best practices adopted by the community. You can go a little further with more restrictive rules. I did this for a few projects and learned even more about the language. Go is very opinionated by default with its code style. By following what is already defined, you can avoid wasting time arguing with your team about small details.</p><p>Go also comes with a test framework, so you have all the basics to create good and maintainable software without having to worry too much or choose frameworks.</p><h3>5 — We wanted a common language within our tribe</h3><p>At SumUp, we work with the concept of squads and tribes, as per t<a href="https://medium.com/scaled-agile-framework/exploring-key-elements-of-spotifys-agile-scaling-model-471d2a23d7ea">he Spotify Tribe Engineering Model</a>. My squad was part of a tribe that uses many programming languages. We wanted to have a common language that all our squads could use, so that any engineer can switch between squads and deliver value quickly. I realise that this goes a little bit against the principles of a multi-language company, but we saw real benefits in using Go as our main language.</p><p>This is good for the company, but also for developers who want to change their current context, or maybe even live in another country. Our tribe has squads in two locations, Berlin and São Paulo. If someone wants to move and continue working in the tribe, they won’t have technological issues. Last year, one of our software engineers enjoyed <a href="https://medium.com/inside-sumup/life-as-a-sumup-software-engineer-across-2-continents-c64e626eeee7">life at SumUp across two continents</a>.</p><h3>6 — No Silver Bullet</h3><p>Go will never be our <a href="https://en.wikipedia.org/wiki/No_Silver_Bullet">silver bullet</a> and we don’t expect this from any single language. As a rule, you shouldn’t expect this from any particular technology.</p><p>Go proved to be a good solution for our specific needs this time, but this doesn’t mean that it will be the solution for everything.</p><p>And we’re perfectly happy with this. We need to also have space to create new things and find the right tools for the job.</p><h3>Bonus reason — Amazing mascot, great package names.</h3><p>Did you see their mascot? You can even create <a href="https://gopherize.me/">your own gopher</a>! Go also has incredible library names like <a href="https://github.com/gin-gonic/gin">Gin Gonic</a>, <a href="https://www.gorillatoolkit.org/">Gorilla</a>, and <a href="https://gobuffalo.io/en/">Buffalo</a>.</p><p>—</p><h3>Are you using or planning to use Go in your company?</h3><p>How is your experience with Go? Are you enjoying working with or learning this language? Send me a tweet at <a href="https://twitter.com/herberth3nrique">@herberth3nrique</a>.</p><p>I hope you liked the reasons I shared with you. I chose to focus on benefits that the language brought to my team, so I haven’t even mentioned the most common benefits of the language, such as concurrency, performance and garbage collection.</p><p>If you enjoyed this article, don’t forget to share it on Twitter!</p><p><em>If you understand Portuguese, </em><a href="https://hipsters.tech/hardware-multiplas-linguagens-e-microsservicos-na-sumup-hipsters-on-the-road-30/"><em>we have a podcast</em></a><em> about how we deal with hardware, multi-languages, and microservices at SumUp.</em></p><h3><a href="https://bit.ly/SumUpBRvagas">Take a look at our opportunities</a> in Brazil and join us.</h3><blockquote><em>Follow us on </em><a href="https://www.linkedin.com/company/sumup/?viewAsMember=true"><em>LinkedIn</em></a><em> and on </em><a href="https://www.instagram.com/insidesumupbrazil/?hl=en"><em>Instagram</em></a><em>.</em></blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=abb861416060" width="1" height="1" alt=""><hr><p><a href="https://medium.com/inside-sumup/6-reasons-why-my-team-decided-to-use-golang-abb861416060">6 Reasons why my team decided to use Golang</a> was originally published in <a href="https://medium.com/inside-sumup">Inside SumUp</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How I become a frontend developer and what I learned from it]]></title>
            <link>https://medium.com/@herberthenrique/how-i-become-a-frontend-developer-and-what-i-learned-from-it-c28050d03a5f?source=rss-c79a4e92954f------2</link>
            <guid isPermaLink="false">https://medium.com/p/c28050d03a5f</guid>
            <category><![CDATA[frontend]]></category>
            <category><![CDATA[fullstack-development]]></category>
            <category><![CDATA[learning]]></category>
            <dc:creator><![CDATA[Herbert Henrique]]></dc:creator>
            <pubDate>Mon, 11 May 2020 13:01:01 GMT</pubDate>
            <atom:updated>2020-05-11T13:22:27.271Z</atom:updated>
            <content:encoded><![CDATA[<h3>How I became a frontend developer and what I learned from it</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hir7ObBk2tzqX3rFxTgxJg.jpeg" /><figcaption><em>Photo by </em><a href="https://unsplash.com/@grakozy"><em>Greg Rakozy</em></a><em> on </em><a href="https://unsplash.com/photos/vw3Ahg4x1tY"><em>Unsplash</em></a></figcaption></figure><p><em>You can read the original post </em><a href="https://herberthenrique.com/how-i-become-frontend?utm_source=medium&amp;utm_campaign=original_post\"><em>here on my personal website</em></a><em> :)</em></p><p>I had been working with software development for more than ten years, but only in the last four years of my career I realized I can call my self a <em>“frontend”</em>.</p><p>Okay, from the beginning: My first job was working as an intern on a really small company with a back-office system made in ASP. yeah, not everyone starts your career in a cool startup with fresh new code 🤷‍♂️ After this experience I think I’ve developed few traumas with frontend development, if you need to create a few hacks to work on IE6, we only talk about javascript to validate forms and that table madness… life wasn’t so good for frontend on those years (and this doesn’t even exist… web master maybe?)</p><p>Let’s fast forward a little bit. Around 2011 I started to work in a digital agency and there I was only focused on backend. Well, only until I learned that solving the problem is more important than technology and that an old friend taught me that javascript could be fun and everything changed in my life (thank you (gilini)[https://twitter.com/the_spkr], you had no idea how you changed my life). I was still mostly working with backend, but javascript was becoming my biggest love in the next years.</p><p>That part is super cute, but I need to admit it… I was that jerk who hated CSS. Do you know why I hated it? it’s because I didn’t understand how to use it (Actually it’s the same reason some backend developers hate it). So, it takes time but I could evolve and learn it and see I was a jerk the whole time :)</p><p>Fast forward again and today I work with a lot of backend languages, take care of frontend engineers, and don’t mind working with golang, CSS, rust, or react.</p><p>I don’t care about naming, I say that I’m a software engineer because it’s easy. I don’t care to be named backend, full-stack, or frontend. And you now asked me what I learned from this?</p><h3>Solving the problem is more important than technology</h3><p>I learned javascript to help in a project. I see people today at Sumup trying to learn frontend or backend to help their teams and achieve great things</p><p>If you’re hired as a software engineer is to solve problems and not care what technology, language, or whatever.</p><h3>The frontend evolves super fast and this is amazing</h3><p>When I started my career frontend was a lot of tables and today we have amazing things. Javascript is a language with really great features that are evolving every day.</p><p>do you remember about that “javascript fatigue” a few time ago? Let me told you that all these new things being created all the time is one of the most fascinating things in the frontend community. You don’t need to learn everything, but see all these things and learning new things is a privilege of our time.</p><h3>Do what you love and have an open mind</h3><p>Or maybe: don’t be a jerk.</p><p>That’s the basic but sometimes a few people don’t realize that. If you’re a backend, it doesn’t mean you’re better than someone just because of your language or whatever.</p><p>Have an open mind, try new things and maybe you’ll find a new love :)</p><h3>Did you find this post useful?</h3><p><a href="https://twitter.com/intent/tweet?text=How%20I%20became%20a%20frontend%20developer%20and%20what%20I%20learned%20from%20it%20via%20%40herberth3nrique&amp;url=https://herberthenrique.com/how-i-became-frontend">Click here to share this post on Twitter</a> and tell me what you think or just send me a message at <a href="https://twitter.com/herberth3nrique">@herberth3nrique</a>. :)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c28050d03a5f" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>