<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Udara Weerasinghege</title>
    <description>The latest articles on Forem by Udara Weerasinghege (@udaraweerasinghege).</description>
    <link>https://forem.com/udaraweerasinghege</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F19015%2Fa32ee5fc-0e15-4790-8848-a90641339979.jpeg</url>
      <title>Forem: Udara Weerasinghege</title>
      <link>https://forem.com/udaraweerasinghege</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/udaraweerasinghege"/>
    <language>en</language>
    <item>
      <title>Level Up Your Resume. Why You Should Start a Career Doc</title>
      <dc:creator>Udara Weerasinghege</dc:creator>
      <pubDate>Wed, 02 Dec 2020 19:35:18 +0000</pubDate>
      <link>https://forem.com/udaraweerasinghege/level-up-your-resume-why-you-should-start-a-career-doc-19np</link>
      <guid>https://forem.com/udaraweerasinghege/level-up-your-resume-why-you-should-start-a-career-doc-19np</guid>
      <description>&lt;p&gt;Deciding which projects to put on your resume? Searching for evidence to prove you deserve that raise or promotion? Need talking points from past projects for an interview? Want to reminisce about all the great things you’ve done in your career?&lt;/p&gt;

&lt;p&gt;If you answered yes to any of the questions above, you need a career doc.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is a career doc?
&lt;/h2&gt;

&lt;p&gt;It is a living document with a detailed track record of your career. &lt;strong&gt;It’s like a journal for your job&lt;/strong&gt;. It has more depth and detail than a resume, and it’s frequently updated.&lt;/p&gt;

&lt;p&gt;Unlike a resume, your career doc is for future-you to read, rather than for potential employers or recruiters.&lt;/p&gt;

&lt;p&gt;At &lt;a href="http://squareup.com/"&gt;Square&lt;/a&gt;, career docs are called &lt;a href="https://developer.squareup.com/blog/you-are-your-own-best-hype-person/#:~:text=A%20Hype%20Doc%20is%20a,helpful%20when%20filling%20those%20out!"&gt;hype docs&lt;/a&gt; and are a central part of our culture.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why do you need a career doc?
&lt;/h2&gt;

&lt;p&gt;Our &lt;a href="https://lifehacker.com/why-your-memory-sucks-and-what-you-can-do-about-it-596782066"&gt;memories suck&lt;/a&gt;, and we forget things all the time. It’s impossible to remember everything important that happens at work. Your career doc will remember so that you don't have to.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It helps future-you have a detailed record of your past accomplishments&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Here are a few reasons your future self will be thankful you started a career doc…&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. You’ll need projects and their details to add to your resume&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most of us only update our resumes when we are looking for a job. If you’re lucky enough to be in a stable industry, this is probably every few years. And when you do, you’ll have to recall years worth of projects and details to decide which ones to put on your resume.&lt;/p&gt;

&lt;p&gt;Our resumes are too important to be based solely on our memory. A resume is usually the first impression we give to potential employers, so we need to be selective about what we put on it.&lt;/p&gt;

&lt;p&gt;With a career doc, you have all the projects you worked on at your fingertips, you can pluck whatever sounds most impressive, edit it to fit your resume, and you’re done.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bonus:&lt;/strong&gt; Using a career document, you can create variations of your resume that are custom-tailored to the company you’re applying to.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. You’ll need evidence for why you deserve a raise or promotion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you google “&lt;em&gt;how to ask for a promotion&lt;/em&gt;”, the &lt;a href="https://hbr.org/2018/01/how-to-ask-for-a-promotion"&gt;top&lt;/a&gt; &lt;a href="https://www.themuse.com/advice/moving-on-up-how-to-ask-for-a-promotion"&gt;three&lt;/a&gt; &lt;a href="https://www.forbes.com/sites/kathycaprino/2019/03/11/how-to-ask-for-a-promotion-in-the-most-compelling-and-convincing-way/?sh=281e8cf14835"&gt;results&lt;/a&gt; tell you to prepare a case with supporting evidence to prove you deserve it. If you have an up to date track record of your accomplishments, this is simple. You can extract projects and details that support your case the best.&lt;/p&gt;

&lt;p&gt;With a career document, you can show how your responsibilities have increased, and how the work you’ve been doing has changed over the months or years.&lt;/p&gt;

&lt;p&gt;Managers will also appreciate your initiative. Thanks to you, they have hard proof they can show any higher-ups in case they need to get approval. Everybody wins.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bonus:&lt;/strong&gt; The career document can even nudge you into realizing that you’re ready for a promotion. If you see a trend of increased responsibilities and scope in your projects, it might be a sign that you’re ready to be promoted.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. You’ll need talking points for interviews&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;“&lt;em&gt;Tell me about a time when&lt;/em&gt;” questions are common in every industry. &lt;a href="https://managementconsulted.com/amazon-leadership-principles/"&gt;Amazon is notorious&lt;/a&gt; for quizzing candidates with these during their&lt;a href="https://managementconsulted.com/amazon-leadership-principles/"&gt; leadership principle&lt;/a&gt; interviews. You are sure to questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tell me about a recent project you worked on&lt;/li&gt;
&lt;li&gt;Tell me about a time you had to fix a bug in production&lt;/li&gt;
&lt;li&gt;Tell me about a time when you mentored someone&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Coming up with examples for these questions on the spot can be difficult, but with your career document, you will have plenty of projects and scenarios that you can use to answer these types of questions with a level of detail that very few candidates achieve.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. You’ll build a habit of reviewing and reflecting on your work&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Review and reflection are key processes for both personal and career growth. These habits are built into the career document process, as you’ll need to update it regularly. Each time you update the doc, you’ll need to review your most recent work and reflect on your most important contributions.&lt;/p&gt;

&lt;h2&gt;
  
  
  What should you put in a career doc?
&lt;/h2&gt;

&lt;p&gt;Anything at all that helps future-you when they need details about your projects and responsibilities.&lt;/p&gt;

&lt;p&gt;Here are a few areas that you can focus on.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Projects&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Projects will make up most of your career doc. Record any features and projects you were a part of. Note down how you specifically contributed, and make sure you add a short description of the project for context.&lt;/p&gt;

&lt;p&gt;If you’re stuck on what to add regarding a project, you can think about questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Did you write or review a technical design?&lt;/li&gt;
&lt;li&gt;Did you work by yourself or with others?&lt;/li&gt;
&lt;li&gt;Were there any key learnings or challenges?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Since projects can span many weeks, you should update the document as you go. You don’t need to wait until the project ends to make an entry in the doc. If you wait that long, you might forget a lot of milestones from earlier in the project.&lt;/p&gt;

&lt;p&gt;Don’t stay purely technical either. Include how the project impacted the business. Did it drive revenue or conversion rates? Did it address a huge user pain point?&lt;/p&gt;

&lt;p&gt;You should also add supporting evidence. This can take the form of screenshots, or links to anything relevant (GitHub PRs, Jira tickets, metrics dashboards). This will come in handy when you need a detailed account of a project, whether it’s for an interview or when you’re pitching yourself for a raise.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. People&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As you grow more experienced, mentoring, coaching, and onboarding will naturally become a part of your responsibilities. You might also start interviewing and get involved in the hiring process.&lt;/p&gt;

&lt;p&gt;These are all important to note down in your career doc. Over time you might notice a trend where people related activities are taking more time than projects. Since this can happen very gradually, it can be easy to miss, but you can use your career document to recognize these trends and adjust accordingly.&lt;/p&gt;

&lt;p&gt;You may find yourself enjoying the increased time spent on people which could lead to a conversation around moving to a management-type role.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Community&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This can include activities like speaking at events, running company-wide workshops, contributing to a blog, participating in/creating employee resource groups.&lt;/p&gt;

&lt;p&gt;These points can be a goldmine to draw from for cultural or behavioural interviews in the future.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Other&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can enter anything else related to your career that you’re proud of. It’s always easier to think of what important things happened over the last week or two than over the last few months, which means that your career doc won’t miss anything about your work.&lt;/p&gt;

&lt;p&gt;A few things that fall in the &lt;strong&gt;other&lt;/strong&gt; bucket and are worth noting:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You improved a process(sprint-planning/retrospectives/how on-call works)&lt;/li&gt;
&lt;li&gt;You got positive feedback from a manager or teammate&lt;/li&gt;
&lt;li&gt;You fixed a long-standing one-off bug that no one wanted to tackle&lt;/li&gt;
&lt;li&gt;You completed a career-related course&lt;/li&gt;
&lt;li&gt;You started a blog&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How should you start?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Create a new google doc or whatever else you use to take notes&lt;/strong&gt;. Bookmark it, pin it, do anything you have to do to make sure it’s as few clicks away as possible. If a weekly or bi-weekly review is already part of your schedule, you can add “&lt;strong&gt;update your career document&lt;/strong&gt;” as an agenda item to your review session.&lt;/li&gt;
&lt;li&gt;Once a week or once every two weeks, &lt;strong&gt;reflect on your recent work and update the doc&lt;/strong&gt;. You can go over recent tickets, meetings, pull requests etc. to jog your memory on where you’ve been spending your time. Note down whatever stands out to you.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Don’t worry too much about the format. Writing things down is the most important part. If you see patterns emerging in the way you’re taking notes, you can always create a template for yourself.&lt;/p&gt;

&lt;p&gt;If you would like to start with some structure, &lt;a href="https://docs.google.com/document/d/1tqBjmCjFhxvKagxnXbpSsYnK6Ve75NDPoOmoapmkA6E/edit?usp=sharing"&gt;here’s a template with a couple examples&lt;/a&gt;. There’s also &lt;a href="https://hypedocs.co/"&gt;Hype Docs&lt;/a&gt; that makes it simple to add and view your progress.&lt;/p&gt;

&lt;p&gt;When you sit down to update your career document, if you frequently find that you have nothing to enter, it might be a sign that you’re working on uninteresting projects without much impact. Or you’ve made it too hard to use and edit the doc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You don’t need to have a job to start a career document.&lt;/strong&gt; It’s a good idea to get a career doc started the moment you start gathering relevant experience in the field. You can add details about courses, side projects, community involvement, and anything else you’re doing to make yourself a more attractive candidate for jobs.&lt;/p&gt;

&lt;h3&gt;
  
  
  How much detail should you enter?
&lt;/h3&gt;

&lt;p&gt;Start out with as much or as little detail as you want. You’ll get a feel for the right level of specificity as you add more to the document. &lt;strong&gt;Think about your future self, and how much context they would need to understand the points you note down&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final thoughts
&lt;/h2&gt;

&lt;p&gt;My career document is 3 years old and 5 pages long so far. If you ask me about any of my recent work, I can give you a detailed account of my major projects, and what kind of impact I’ve had at the companies I worked at.&lt;/p&gt;

&lt;p&gt;When I looked for a job a few months ago, it only took me a few minutes to update my resume with details about my most recent job.&lt;/p&gt;

&lt;p&gt;There have been weeks where I didn’t have anything important to put on it, or just skipped because I forgot. And that’s okay.&lt;/p&gt;

&lt;p&gt;I hope you start a career doc too, and that it will be as useful to you as it has been for me.&lt;/p&gt;

</description>
      <category>resume</category>
      <category>career</category>
      <category>development</category>
    </item>
    <item>
      <title> 8 Terminal Tools to make you a 2x developer</title>
      <dc:creator>Udara Weerasinghege</dc:creator>
      <pubDate>Wed, 18 Nov 2020 14:24:19 +0000</pubDate>
      <link>https://forem.com/udaraweerasinghege/8-terminal-tools-to-make-you-a-2x-developer-4568</link>
      <guid>https://forem.com/udaraweerasinghege/8-terminal-tools-to-make-you-a-2x-developer-4568</guid>
      <description>&lt;p&gt;I spend a third of my life sleeping, and I probably spend a quarter of it on my terminal, and I don’t even use vim.&lt;/p&gt;

&lt;p&gt;I want to spend these hours getting things done, not trying to remember commands, or typing out the same command for the nth time, or figuring out which terminal window is doing what.&lt;/p&gt;

&lt;p&gt;The following tools help me optimize my terminal for productivity. Personally, I use &lt;a href="https://www.iterm2.com/downloads.html"&gt;iTerm2&lt;/a&gt; with &lt;a href="https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH%5D"&gt;zsh&lt;/a&gt; as my terminal, but a lot of the tools below are terminal-agnostic.&lt;/p&gt;

&lt;p&gt;Here we go…&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://medium.com/r?url=https%3A%2F%2Fgithub.com%2Fohmyzsh%2Fohmyzsh"&gt;1. oh my zsh — Manage your zsh plugins easier than ever&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;Oh my zsh allows you to play around with a whole host of plugins by simply updating a list in your .zshrc file.&lt;/p&gt;

&lt;p&gt;This is plugin management made so easy your grandma could do it. For example, your ~/.zshrc might look like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;plugins=(
  git
  bundler
  dotenv
  osx
  rake
)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;If you use zsh, this is an absolute must-have.&lt;/strong&gt; If you don’t have it already, just go &lt;a href="https://github.com/ohmyzsh/ohmyzsh"&gt;download&lt;/a&gt; it&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Oh My Zsh will not make you a 10x developer…but you may feel like one.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;— &lt;a href="https://github.com/ohmyzsh/ohmyzsh"&gt;oh my zsh’s github page&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://github.com/romkatv/powerlevel10k"&gt;2. powerlevel10k theme — Make your terminal fabulous&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;This is one of the best zsh themes I’ve used, and I highly recommend it. It’s infinitely configurable while still being friendly and easy to use. It has a better onboarding guide than most SaaS products, which makes for an easy transition from whatever theme you’re on currently.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FmQ-oDhD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1530/1%2AqJ2REoqCNUkIexZOIHPWJA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FmQ-oDhD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1530/1%2AqJ2REoqCNUkIexZOIHPWJA.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Different styles you can have with p10k. Credit: &lt;a href="https://github.com/romkatv/powerlevel10k"&gt;Powerlevel10k’s github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One of its killer features is the &lt;a href="https://github.com/romkatv/powerlevel10k#instant-prompt"&gt;&lt;strong&gt;instant prompt&lt;/strong&gt;&lt;/a&gt;. When we sprinkle our terminal with plugins, it can start to get slow. The instant prompt is exactly what it sounds like, it shows you the prompt even if zsh is loading stuff in the background so that you can start typing your next command. No more waiting around!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7Pc1WDz0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://miro.medium.com/max/1920/0%2A4U2ZbEVGNQMcN0WL.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7Pc1WDz0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://miro.medium.com/max/1920/0%2A4U2ZbEVGNQMcN0WL.gif" alt="" title="Powerlevel10k's github"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://medium.com/r?url=https%3A%2F%2Fgithub.com%2Fjunegunn%2Ffzf"&gt;3. fzf — Fuzzy find everything&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;If you get one thing from this list, get this.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Remember that one command from three days ago that you ran? No? Me neither.&lt;/p&gt;

&lt;p&gt;You probably use &lt;code&gt;ctrl+r&lt;/code&gt; for reverse search hoping to get what you're looking for. Stop it! With fzf you type &lt;code&gt;ctrl+r&lt;/code&gt; once and type anything; it will fuzzy find what you’re looking for and you just pick from a list. This &lt;a href="https://www.youtube.com/watch?v=1a5NiMhqAR0"&gt;video&lt;/a&gt; is a good intro to some of its slick features that will make you a 2x developer at least.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NhOejc2F--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://miro.medium.com/max/1388/1%2AhWkNOvqceMSS-zyvSkjQHQ.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NhOejc2F--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://miro.medium.com/max/1388/1%2AhWkNOvqceMSS-zyvSkjQHQ.gif" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Don’t forget to install the keybindings with the following command&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ $(brew --prefix)/opt/fzf/install
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;a href="https://github.com/zsh-users/zsh-autosuggestions"&gt;&lt;strong&gt;4. zsh autosuggestions — Type less, do more&lt;/strong&gt;&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;Let past you help current you!&lt;/p&gt;

&lt;p&gt;Chances are you type the same command A LOT. For example, I used to type &lt;code&gt;npm run watch&lt;/code&gt; a million times. Now, with zsh autosuggestions, I type &lt;code&gt;n&lt;/code&gt; and it shows &lt;code&gt;npm run watch&lt;/code&gt;, I press the right arrow key, and I’m done. &lt;strong&gt;That’s a nearly 85% decrease in keystrokes&lt;/strong&gt;. That’s a 2x developer move right there.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bHqLk2AZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1124/1%2AnXrUU70hrloJagE1ltw42Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bHqLk2AZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1124/1%2AnXrUU70hrloJagE1ltw42Q.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The grey part is what the plugin is suggesting based on my input so far&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://github.com/agkozak/zsh-z"&gt;5. z — Hop around directories like bugs bunny&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;You probably spend a lot of time in the same few directories. z tracks your most visited directories and allows you to access them with very few keystrokes. It’s like if &lt;code&gt;cd\&lt;/code&gt; and &lt;code&gt;autosuggestions\&lt;/code&gt; had a baby.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZZoW5bPa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://miro.medium.com/max/2358/0%2AvDm8kaC6sJWMDRxp.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZZoW5bPa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://miro.medium.com/max/2358/0%2AvDm8kaC6sJWMDRxp.gif" alt="" title="z github"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://medium.com/r?url=https%3A%2F%2Fgithub.com%2Fohmyzsh%2Fohmyzsh%2Ftree%2Fmaster%2Fplugins%2Fgit"&gt;6. git plugin — Type less, do more pt 2.&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://medium.com/r?url=https%3A%2F%2Fgithub.com%2Fohmyzsh%2Fohmyzsh%2Ftree%2Fmaster%2Fplugins%2Fgit"&gt;git plugin&lt;/a&gt; adds a convenience layer for git with a bunch of shortcuts and functions. &lt;code&gt;gl&lt;/code&gt; to &lt;code&gt;git pull&lt;/code&gt;, &lt;code&gt;gp&lt;/code&gt; to &lt;code&gt;git push&lt;/code&gt;, &lt;code&gt;gco&lt;/code&gt; to &lt;code&gt;git checkout&lt;/code&gt;. Fewer words, more speed!&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://medium.com/r?url=https%3A%2F%2Fgithub.com%2Fasdf-vm%2Fasdf"&gt;7. asdf — One version management tool to rule them all&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;I used to have rvm for managing ruby versions, pyenv for python, and nvm for node. Now I just have &lt;a href="https://medium.com/r?url=https%3A%2F%2Fgithub.com%2Fasdf-vm%2Fasdf"&gt;asdf&lt;/a&gt; for all my version management requirements. it works seamlessly with all the .nvmrc/.rvmrc version files and is simple to set up.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Iterm2 git badges — stop getting lost in your terminal
&lt;/h2&gt;

&lt;p&gt;How many terminal windows do you normally have open? I usually have a backend server running on one tab, and webpack running on another. In a microservice world, you might have multiple frontend and backend services running in multiple tabs at the same time. Badges make it easy to wrap your head around what’s going on where.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Install the iterm shell integration&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tNp4h1v5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1164/1%2AyASpGvBY28M0oRkse4eMIw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tNp4h1v5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1164/1%2AyASpGvBY28M0oRkse4eMIw.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2. Update your ~/.zshrc with the following. It sets an item variable called gitProject.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;function iterm2\_print\_user\_vars() {
  iterm2\_set\_user\_var gitProject $(basename $(git rev-parse --show-toplevel 2&amp;gt; /dev/null) 2&amp;gt; /dev/null)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;3. Update your iterm’s profile to use the variable we created. &lt;code&gt;cmd + I&lt;/code&gt; in iterm to bring up the profile. Then add &lt;code&gt;\(user.gitProject)&lt;/code&gt; to the badge field&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--P1Vx0TZ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/2244/1%2Av_stb2lAZRTEuP202T8QlA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P1Vx0TZ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/2244/1%2Av_stb2lAZRTEuP202T8QlA.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can play around with badges to have whatever information you need upfront and center in your terminal.&lt;/p&gt;

&lt;p&gt;I hope these tips and tricks take you a step further on your path to being a 2x developer.&lt;/p&gt;

&lt;p&gt;There are so &lt;a href="https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins"&gt;many more plugins&lt;/a&gt;. With how easy it is to install and remove plugins using oh-my-zsh you should really play around with plugins that even remotely pique your interest. The next plug-in you install might change your life.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Interview Guide for Software Developers - Part 2: Ace the Coding Interview</title>
      <dc:creator>Udara Weerasinghege</dc:creator>
      <pubDate>Tue, 03 Nov 2020 19:27:31 +0000</pubDate>
      <link>https://forem.com/udaraweerasinghege/interview-guide-for-software-developers-part-2-ace-the-coding-interview-2924</link>
      <guid>https://forem.com/udaraweerasinghege/interview-guide-for-software-developers-part-2-ace-the-coding-interview-2924</guid>
      <description>&lt;p&gt;Over the last five years, I’ve been in over a hundred coding interviews. I conducted a majority of them as an interviewer, and in about 15 of them, I was a nervous interviewee looking for a job.&lt;/p&gt;

&lt;p&gt;In the beginning, I dreaded coding interviews. Solving algorithm problems under time pressure wasn’t my idea of a good time. But, as I got more experience on the opposite side of the table as an interviewer, I realized that it’s &lt;strong&gt;not&lt;/strong&gt; &lt;strong&gt;just about whether you solve the problem or not&lt;/strong&gt;. A lot of it has to do with &lt;strong&gt;how you solve the problem&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;In this guide, I’ll go over general tips that I’ve learned can make or break an interview.&lt;/p&gt;

&lt;p&gt;Let’s get started...&lt;/p&gt;




&lt;h4&gt;
  
  
  Analyze &amp;amp; clarify requirements
&lt;/h4&gt;

&lt;p&gt;You are usually presented with a couple of sentences of requirements to kick things off. Far too often, people will start coding right away. &lt;strong&gt;Coding too soon without talking through the problem to verify their assumptions is one of the most common mistakes candidates make&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A good way to start is to repeat the question back to the interviewer in your own words. Once you’re sure you understand the problem, take a few moments to think of edge cases and clarify what should happen in each situation. Common areas to ask questions about are: handling bad inputs, addressing ambiguous or undescribed behaviour, different types (strings, ints) and handling exceptions.&lt;/p&gt;

&lt;p&gt;You can usually find a few questions to ask about even the most straightforward questions. If there are tons of edge cases to cover, it’s worth noting them down as comments so that you remember to test them later.&lt;/p&gt;

&lt;p&gt;It’s always a good idea to go over the problem with a couple of sample inputs to ensure that your output and the output the interviewer expects is the same.&lt;/p&gt;

&lt;p&gt;Once you’ve understood the questions and uncovered some edge cases you should have some idea(s) for a way forward. It’s best to describe your proposed solution in words at this point. If you can think of multiple solutions, discuss them with the interviewer, and weigh tradeoffs. Exploring a problem space together can give the interviewer a good idea of how you think and communicate when you’re handed requirements. After all, breaking down requirements into code is what we do on a daily basis.&lt;/p&gt;

&lt;p&gt;Some problems have multiple parts that are introduced as you solve a portion. Each time a new requirement is given, you should repeat the process of looking for edge cases and asking questions. Additionally, look out for how the new functionality you need will affect what you have so far. What will you need to refactor, and how will it modify existing behaviour?&lt;/p&gt;




&lt;h4&gt;
  
  
  Write clean code
&lt;/h4&gt;

&lt;p&gt;Is your code readable? Are you hard coding values? Do your variable and function names make sense? Are you writing small functions or is the entire solution in one big function?&lt;/p&gt;

&lt;p&gt;These are some things interviewers look out for in regards to your code. Sometimes it’s difficult to write production-level code under time pressure, and It’s okay to take &lt;em&gt;some&lt;/em&gt; shortcuts. Use your best judgment; be sure to let the interviewer know “I’m doing X so I can do this quick, but I’d do Y if I were committing to production”.&lt;/p&gt;

&lt;p&gt;Even when the shortcuts are obvious, or the naming is bad because you’re in a rush, mention anything that makes the code messier or harder to read. Remember that &lt;strong&gt;the interviewer knows nothing of your coding abilities outside of what you show them in this hour.&lt;/strong&gt; The interviewer might think the shortcuts and you use in the interview are a reflection of how you code at work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test your code incrementally&lt;/strong&gt;. This will help you catch and correct syntax issues as you go. If it’s a multipart problem, as you solve and test for new requirements, make sure your tests still pass for the previous sections.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note on Coding Language*:&lt;/strong&gt;* Are you comfortable with the language you’re working in? Some people like to use a different language than the one they use every day at their job. If you do this, make sure you are up to date on your interview language. You shouldn’t have to google how to loop over an array during the interview. Most coding interviews are fine with you looking up documentation, but you should be familiar with the basic data structures and operations. Showing mastery over the language you choose can get you extra points!&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Debugging&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;When you run into errors and bugs don’t panic. This is a good opportunity to show your pro debugging skills. If there are compiling errors, take your time, read the stacktrace, and narrow down where things are going wrong. If there are no errors, but you have unexpected output, take a structured approach to troubleshooting. Place print statements methodically to help you find where things are going wrong. A good approach is to print out internal data structures and other key variables in your solution. You want to avoid sporadically printing things without any rhyme or reason.&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Communication&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;If you communicate poorly during the interview, it can overshadow the rest of the interview even if you ace the actual problem. Every company I’ve been at has a section to rate an interviewer’s communication skills. &lt;strong&gt;Individuals don’t write code, teams do.&lt;/strong&gt; The interviewer wants to ensure that you’d be someone they would want to work with, and a large part of that is based on how well you communicate.&lt;/p&gt;

&lt;p&gt;Put simply, &lt;strong&gt;communicate your thinking throughout the interview&lt;/strong&gt;. The interviewer should be able to follow your train of thought as if they were a passenger on it. When you arrive at points in the question when you need to make a decision or if you hit roadblocks, talk through your how you decide which paths to take, and how you unblock yourself.&lt;/p&gt;

&lt;p&gt;Positive communication also goes a long way. When you hit an especially difficult obstacle, where you can’t seem to find the way forward, try not to get frustrated. Approach it with a positive attitude, and ask for help when you need it.&lt;/p&gt;

&lt;p&gt;Communicating like this while you code is is probably not something you do every day at your job. It can feel unnatural and awkward. Practicing problems with a friend while speaking out your thoughts is a good way to improve in this area.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Virtual interview communication tip:&lt;/strong&gt; Don’t cut off the interviewer. This is very difficult to have a hold on when doing interviews virtually. Try to speak once it’s clear that the interviewer is done speaking. The minor lag involved in online calls can make for jarring interruptions.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Final thoughts on improving&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;That’s a lot to keep in mind while doing an interview. As with any skill, practice is the best way to improve.&lt;/p&gt;

&lt;p&gt;Practice the different aspects I’ve described. Do mock interviews with friends or colleagues, and ask them to rate you on the criteria above.&lt;/p&gt;

&lt;p&gt;Interview your friends. It’s easier to spot mistakes and areas for improvement when you’re on the other side of the table. This process can help you stay attentive to your strengths and weaknesses in interviews. Conducting interviews as an interviewer has been a key factor in making me a better interviewee over the years.&lt;/p&gt;

&lt;p&gt;Do &lt;a href="https://leetcode.com/"&gt;leetcode&lt;/a&gt; questions; practice makes permanent. The point of doing leetcode is not to memorize solutions, it’s to recognize different types of problems. When you see a new question, you’ll be able to categorize it and draw on your knowledge to have an idea of which path to take, which edge cases might be an issue, which questions you’ll need to ask, and what kind of performance implications you’ll need to address.&lt;/p&gt;

&lt;p&gt;Thank you for reading. I hope this guide helps you ace your next coding interview!&lt;/p&gt;

&lt;p&gt;How do you approach coding interviews? If you have any tips or tricks, please comment and share!&lt;/p&gt;

</description>
      <category>interview</category>
      <category>jobsearch</category>
      <category>programming</category>
      <category>communication</category>
    </item>
    <item>
      <title>Interview Guide for Software Developers - Part 1: Landing the Interview</title>
      <dc:creator>Udara Weerasinghege</dc:creator>
      <pubDate>Fri, 23 Oct 2020 17:49:06 +0000</pubDate>
      <link>https://forem.com/udaraweerasinghege/interview-guide-for-software-developers-part-1-landing-the-interview-3og7</link>
      <guid>https://forem.com/udaraweerasinghege/interview-guide-for-software-developers-part-1-landing-the-interview-3og7</guid>
      <description>&lt;p&gt;Searching for a new job can be a daunting experience. It’s extremely discouraging to apply to dozens of positions online only to hear back from one or two, if any. In this post, I’ll walk through how you can leverage your network to land an interview instead of relying solely on online applications.&lt;/p&gt;

&lt;p&gt;Most people default to applying through a company's career page when searching for a job. While this is the most common and the easiest way to apply, it’s also the least effective. You are one of the hundreds if not thousands of applicants for a single position. You're relying purely on the strength of your resume to get through to the interview stage. Even with a lot of relevant experience and a great resume, there’s a chance that yours will not be looked at due to the sheer volume of applicants.&lt;/p&gt;

&lt;p&gt;In my experience, the best way to land an interview is by getting a referral from an existing employee at the company you’re interested in. While online applications come in the hundreds, referrals are rarer and carry more weight.&lt;/p&gt;

&lt;p&gt;Due to the large volumes of online applications, there’s a good chance that yours is missed or overlooked. Referrals get around this problem. Referrals will generally be looked at first by the recruiter or manager hiring for a position. This gives you an immediate advantage. Referrals also carry a seal of approval that is absent from an anonymous online application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you submit 10 online applications, and you get 10 referrals, all else being equal, you'll probably hear back from a higher percentage of the referrals.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Asking for a referral can feel pushy and uncomfortable. However, most companies have incentives -- often financial -- for employees that make successful referrals, so the referrer benefits as well. Additionally, most people are just happy to help in any way they can if they believe you’d be a good fit for the position.&lt;/p&gt;

&lt;p&gt;Let’s look at a couple of ways of securing referrals.&lt;/p&gt;

&lt;h3&gt;
  
  
  Find existing connections at the company
&lt;/h3&gt;

&lt;p&gt;Friends, mutual friends, classmates, and ex-coworkers are all great sources for obtaining a referral. If they know you personally and know the quality of your work first or second hand, all it takes is a polite message asking for a referral to the position you’re interested in. You can check the company’s LinkedIn profile to discover your mutual connections. If you only have 2nd level connections, see if you get an introduction from your mutual connections. Don’t forget to look for company alumni, who are direct connections as well! They will usually still have friends at the company, and they can help you get an introduction.&lt;/p&gt;

&lt;h3&gt;
  
  
  Reach out to engineers &amp;amp; recruiters at the company
&lt;/h3&gt;

&lt;p&gt;Employees at a company are often happy to talk about the work they do. You can use LInkedin to find developers at the companies you’re interested in. If it's a large company, try to find someone in the department that's related to the position you want. Employees who have something in common with you -- highschool/bootcamp/college/previous job/shared interest/hobby -- are the best candidates for reaching out, as they’ll be more inclined to reply to your messages.&lt;/p&gt;

&lt;p&gt;Tell them you're interested in the company and the work that they're doing. Be genuine, mention anything common you have with them, and ask them if they have 15-30 minutes to chat to talk about their work (pre-COVID I’d have recommended meeting them for coffee). If they respond positively, schedule a time and send over a calendar invite. Don’t forget to add a meeting link to the calendar invite, or get their phone number.&lt;/p&gt;

&lt;p&gt;During the call, ask them about their work, company culture, and anything you’re curious about. This is a great opportunity to learn more about the company first-hand. Also, let them know a bit about your experience and why you're interested in the company. If the call goes well, as you reach the end of your meeting time, politely ask if they would be comfortable referring you.&lt;/p&gt;

&lt;p&gt;If you can't find any engineers that respond, reach out to a recruiter directly. While they may not provide you with a referral, they might be able to expedite the resume review process if they believe you are well suited for the position. Everyone loves initiative!&lt;/p&gt;

&lt;p&gt;The process of finding individuals and reaching out doesn't scale if you’re applying for 100s of positions, or if you have tight timelines. I recommend choosing a handful of companies that you're most passionate about and reaching out to them.&lt;/p&gt;

&lt;p&gt;You may find yourself unlucky with no responses. In this case default to applying online. Any application is better than no application.&lt;/p&gt;

&lt;p&gt;When you begin your next job search, I encourage you to leverage your network to help you get referrals. They take more effort to secure, but you almost guarantee that your resume will be looked over and considered. Very few people actually use their network in this way, so this is an easy way to stand out. It might seem scary at first, but the worst that could happen is you don’t get a reply and you apply online, which you would have done anyway.&lt;/p&gt;

&lt;p&gt;As you rack up industry experience, your network and the strength of your connections will naturally grow, making this process easier and easier. Early on in your career, you’ll have to work hard for referrals by scouring LinkedIn for the right people to message, but I promise it’s worth the effort!&lt;/p&gt;

&lt;p&gt;If you liked this post or found it useful, keep an eye out for my next post with tips for Acing The Coding Interview&lt;/p&gt;

</description>
      <category>jobhunting</category>
      <category>referrals</category>
    </item>
    <item>
      <title>Remote Onboarding Tips - Week 1</title>
      <dc:creator>Udara Weerasinghege</dc:creator>
      <pubDate>Tue, 23 Jun 2020 21:31:44 +0000</pubDate>
      <link>https://forem.com/udaraweerasinghege/remote-onboarding-tips-week-1-4ebj</link>
      <guid>https://forem.com/udaraweerasinghege/remote-onboarding-tips-week-1-4ebj</guid>
      <description>&lt;p&gt;Onboarding to a new company can be an overwhelming experience, even more so now that everyone is remote. It’s easy to get into a state of information overload. As a developer, you’ll not only have to handle general onboarding, but engineering onboarding as well, which can be an overwhelming experience in itself.&lt;/p&gt;

&lt;p&gt;I started a new job as a Software Engineer last week, and I kept notes on what went well while onboarding. These are a few key things that helped me have a successful first week.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Get to know your team&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;One of the biggest downsides of being remote is missing facetime with your teammates.&lt;/p&gt;

&lt;p&gt;Set up 1 on 1 virtual meetings with the members of your immediate team. I set up 30 minutes with each teammate. In hindsight, I should have set up 45–60 minutes. 30 minutes is good for a brief intro, but it's hard to do much more than that.&lt;/p&gt;

&lt;p&gt;The meetings themselves don't need to happen during your first week, but it's a good idea to create them early on.&lt;/p&gt;

&lt;p&gt;In these meetings, get to know your team members. Introduce yourselves, and see where the conversation goes. One question I like to ask everyone is: "What do you wish you knew when you first started?"&lt;/p&gt;

&lt;p&gt;I'd recommend making these recurring meetings. An hour is not enough to get to know someone.&lt;/p&gt;

&lt;p&gt;You should also ask your manager who they think you should meet outside your team, and set up 1 on 1s with them as well.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Keep a list of TODOs&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;During the first couple of days, you'll likely have lots of questions. You'll also have a growing backlog of forms to fill and documents to read. This can be overwhelming, and it's easy to forget some of these as you jump between tasks and meetings.&lt;/p&gt;

&lt;p&gt;When you get an article to read or a form to fill, instead of doing it immediately, keep a list of TODOs. When something new comes your way, create a TODO with enough context so that you can pick it up later. The same goes for questions that arise, create a TODO with the question along with who to ask.&lt;/p&gt;

&lt;p&gt;This lets you control the information flowing your way, and reduces context switching. It will speed things up as well as give you a place to check when you're not sure what to do next.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Take your time with engineering onboarding&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Onboarding as an engineer takes time. To onboard completely and be autonomous it can take anywhere from 3–6 months.&lt;/p&gt;

&lt;p&gt;It can be enticing to try to set up your local environment and get coding right away. But, I'd recommend holding off on this until all your logistical HR-related tasks are out of the way. Setting up a development environment can be time-consuming. It'll take even longer if you're constantly context switching.&lt;/p&gt;

&lt;p&gt;You'll also likely run into issues while setting up your environment. It'll be easier to tackle these issues and troubleshoot if you have uninterrupted time to focus on it.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Personalize your workstation&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If you've received a fresh company laptop, it'll take a while until it's set up the way you're used to.&lt;/p&gt;

&lt;p&gt;You will need to install several pieces of software (make sure to only install approved software). You'll also want to customize your terminal, and adjust other preferences to suit your needs.&lt;/p&gt;

&lt;p&gt;I found this to be the perfect activity when I needed a break from my TODO list, or had some downtime. If you have a list of software and customizations then great, just go down the list and install each one! If not, this is the perfect time to create a list as you go, so that the next time you get a new laptop, you won't be starting from scratch.&lt;/p&gt;




&lt;p&gt;This is a set of general guidelines that can be applied to most onboarding situations. Every company does onboarding differently though, so I'll leave it up to you to take what works for your situation.&lt;/p&gt;

&lt;p&gt;Happy onboarding!&lt;/p&gt;

</description>
      <category>remotework</category>
      <category>job</category>
      <category>career</category>
      <category>onboarding</category>
    </item>
    <item>
      <title>Deciding between two job offers</title>
      <dc:creator>Udara Weerasinghege</dc:creator>
      <pubDate>Tue, 16 Jun 2020 21:21:55 +0000</pubDate>
      <link>https://forem.com/udaraweerasinghege/deciding-between-two-job-offers-c4l</link>
      <guid>https://forem.com/udaraweerasinghege/deciding-between-two-job-offers-c4l</guid>
      <description>&lt;p&gt;Recently, I had the privilege of receiving two job offers. This was the first time I've had competing offers in my career. They were both for Full Stack Developer roles at respectable companies. I'm a pretty decisive person, but this was an agonizing decision. There could be no perfect decision here due to a lack of information. The only way to know for sure which company was right for me, would be to work at each company for several months. Since that was off the table I took a different approach. Spreadsheets!&lt;/p&gt;

&lt;p&gt;I compared the two companies across categories that mattered to me in a job. To each category, I assigned an &lt;strong&gt;importance&lt;/strong&gt; factor based on my personal values. In the end, I had a weighted score for each company that I could use to inform my decision.&lt;/p&gt;

&lt;p&gt;This is the spreadsheet I used (&lt;a href="https://docs.google.com/spreadsheets/d/1COcKG6WT8rsR4s1l9BhkU1c3cLz_ZgPKqkKe9ZbTYtA/edit?usp=sharing"&gt;LIVE LINK HERE&lt;/a&gt;):&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--juA2bu00--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/s54bm22z12mjy7na83qb.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--juA2bu00--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/s54bm22z12mjy7na83qb.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It was still a  close call. But, thanks to the spreadsheet I came to a decision based on an apples to apples comparison rather than what felt like a coin flip in the beginning.&lt;/p&gt;

&lt;p&gt;The importance for each attribute will be different based on your personal values, but I hope this provides a good starting point for when you need to compare offers.&lt;/p&gt;

</description>
      <category>career</category>
      <category>job</category>
    </item>
  </channel>
</rss>
