Last year I started a new job at Brex where Elixir is the primary programming language for business logic. This was my first real adventure into Elixir after working in Ruby (mostly) for my professional career. Since José Valim came from the Ruby world, Elixir was a common buzzword I heard for years. I had done a tutorial or two here and there but never gotten to really use it. Now, looking back at the past year I've become fairly comfortable with Elixir, and wanted to outline some of the things I really enjoy about Elixir and some of the things I miss from Ruby.
Back in school, teachers and TAs made commenting your code seem like a necessity that everyone constantly does as a software engineer. Without comments, you shouldn't consider your code complete. However, since working in industry I find it much different in practice. This post outlines my own observations on when software engineers actually comment their code and when it's important.
Onboarding can be a very hectic and stressful time when you are starting a new job. New coworkers to meet, new codebases to learn, new languages to learn, new technologies, new processes, and the list can go on and on. Good onboarding materials and processes can go a long way when you're first starting out. However, it shouldn't just be a one way street where the company gives to you and you don't give back anything in return. Onboarding should be a collaborative and incremental process that every new hire actively contributes to. Things change from new hire(or onboarding class in larger companies) to new hire, especially in a fast moving startup. It is therefore not only up to the existing members but also the new hires to contribute to the onboarding experience and make it better over time.
I recently started coding in Elixir professionally. It's relatively easy to develop and add new features at work where most things are set up and running. However, I wanted to get a better understanding of setting up an Elixir project and tooling from scratch. So I decided to start simple and try to write an Elixir wrapper for a 3rd party API. Here are my thoughts and learnings from starting a new Elixir API Wrapper from scratch.
Recently I wanted to create a wrapper for a third party API. It wasn't an API I used myself(at least not at the moment), but seeing as there was no wrapper for this language yet I thought I'd give it a go. Luckily this company provides a test account and sandbox environment for every account free of charge. However, I realized this is not a common thing and makes it incredibly difficult to provide wrappers for third party API's unless you are actively using the API and are a paying customer in most cases. Wouldn't developers and the companies be better served if anyone could easily create a test account for an API and develop against it?
Here are some tips and tricks I used during my interviews that helped me perform better. This is by no means a fool proof guide to getting a job, but can definitely help you to perform better.
Software engineering interviews can be incredibly stressful and difficult. Recently, I went looking for a new job and threw myself back into this anxiety inducing process. In order to perform better in my interviews I came up with a 7 step game plan for technical interviews. This is by no means a fool proof guide to passing technical interviews, but can definitely help you to perform better.
Software engineering interviews can be incredibly stressful and difficult. Recently, I went looking for a new job and threw myself back into this anxiety inducing process. Here are some tips and tricks I used to prep during my interview process that I believe helped me perform better and feel more prepared. This is by no means a fool proof guide to getting a job, but can hopefully help you to perform better.
In software development there are a number of things that once had a purpose but after years of refactoring and feature development may no longer serve a purpose. It's important to never accept something as necessary without understanding why it exists and if it's still useful. When you can, take your time to follow and understand every code and system you see so you can become a better developer and help your fellow developers.
Gatsby.js is a fantastic framework for developing statically generated websites using React. Plugins are a necessary part of Gatsby that allow you to quickly and easily add functionality to your Gatsby generated site. However, a lot of these plugins are updated very frequently and at the same time which can lead to a rather annoying number of pull requests when coupled with Dependabot.
Gatsby.js is an up and coming technology for building simple statically generated websites. It has seen a huge adoption, and seemingly everyone in frontend development has heard about it or is talking about it. However, this has led to people trying to use Gatsby in the wrong places instead of other technologies better suited for that situation. This post talks about me falling into this subgroup as well as some of the cases where you should use Gatsby and when you shouldn't use Gatsby.
This tutorial shows how to automate deployments to Kubernetes using CircleCI. This tutorial uses AWS services like ECR and EKS, but it can be generalized and changed for other Kubernetes solutions. This post will go through the entire CircleCI flow of deploying changes for your app to Kubernetes from updating the image and storing it in a repository to deploying the new application on EKS.
This is a tutorial about how to deploy a Gatsby.js application to an S3 bucket using CircleCI.
In order to hide your IP address and to try and limit throttling when web scraping, it might be a good idea to use a proxy such as Tor. This post describes how to use Python based web scraping tools and Tor to hide yourself when scraping websites for data. However, it can also be used more broadly when using Python to make requests to hide your actual IP. I do not condone the use of this information for any illegal or illicit activity.
This is a tutorial about how to deploy a new Docker image to your Kubernetes worker nodes with Codeship when you've deployed your cluster on EKS. This was based on a combination of tutorials found on Codeship and comments and extraneous links. The documentation on Codeship requires you to look in multiple places and is outdated in some cases, so hopefully this aggregates it in one place and updates it.
This is a tutorial on how to setup an AWS Elastic Kubernetes Service (EKS) cluster and deploy a Docker container service to EKS. We will mostly follow the AWS tutorial but make some changes to deploy your personal containers instead of the ones provided by the EKS tutorial. This process was used to deploy our Next.js Application.
This is a tutorial on how to setup a simple Docker image for a Next.js application so that we can deploy the Docker image to a container registry. We will use AWS Elastic Container Registry (ECR) in this tutorial as our Docker container registry. This way we can access our Docker image from other machines and deploy the image to something like AWS Elastic Kubernetes Server (EKS) or AWS Elastic Container Service (ECS).
Setting up Google Optimize for A/B experiments in a Single Page Application(SPA)
Using AWS Lambda Functions and Kinesis Streams to process and stream Segment.io events
Welcome to James Russo's Blog about technology