Bob Cavezza's Blog

In my current role as Director of Product Engineering at FINCURA, I’m often thinking about our front end architecture. For our front end application, we use Angular, with our main concerns being: reliability, testability, and speed to develop new features. To address these concerns, we’ve developed the following architecture. Angular architecture comes down to three […]

Read more...

§1131 · May 7, 2019 · Uncategorized · (No comments) ·


/Good naming is important. It helps developers read code faster. Hard to read code is the biggest impediment to moving fast. Developers spend 10x more time reading code than writing code. Well named methods are the easiest way to increase developer velocity. Good code should read like a story.  One important part of this is […]

Read more...

§1096 · March 29, 2019 · Uncategorized · (No comments) ·


One antipattern I see often is the magic number. The magic number antipattern is a direct usage of a number in a function. Here is an example that comes from Refactoring by Martin Fowler. function potentialEnergy(mass, height) { return mass * 9.81 * height; } What the hell is 9.81? Yeah, I don’t know either. […]

Read more...

§1064 · March 26, 2019 · Uncategorized · (No comments) ·


Yesterday, I had the opportunity to build out the test suite for an open source project called Tributejs.  I had to learn about karma, browserify, babel and babelify. It took an entire day to figure out how front end build tooling works. Here are some lessons I learned. You can see my pull request here. […]

Read more...

§1069 · February 10, 2019 · Uncategorized · (No comments) ·


Note: This article was originally published in May 2018 on LinkedIn articles.  About a year ago, I joined Liberty Mutual. You may have read my post about it. My goals at Liberty were centered around becoming a technical leader. Over the past 12 months, I… 1.) Led a team of 5 developers through evolving priorities with […]

Read more...

§1032 · December 7, 2018 · Work · (No comments) ·


Over the last three years, I was at a startup, a large company, and a smaller company inside a larger company. I’ve interviewed. I’ve been interviewed. I’ve been the deciding vote and I’ve watched great people get passed over. I’ve seen whiteboarding, pair programming, coderpad technical interviews, hacker rank challenges, take home assignments, written tests, and […]

Read more...

§951 · June 26, 2017 · Technical Interviews · (No comments) ·


After weeks of reflection and learning, I decided to take a position at Liberty Mutual. I spent about a year at CoachUp. It was the highlight of my professional career. I learned a lot about software, design patterns, agile, and the craft of writing software. I wanted to continue learning and taking steps towards the […]

Read more...

§949 · June 20, 2017 · Work · 3 comments ·


A few weeks ago, I found this website: http://teachyourselfcs.com It is a structured curriculum for someone who has been writing code, but never learned the fundamentals of Computer Science – someone like me! It has approximately 8 main topics you should learn, a preferred order you should learn them. For each topic, it recommends the […]

Read more...

§938 · April 5, 2017 · Learning, Writing Better Software · (No comments) ·


Book placement is key for finding time to read. I keep 2 books on my nightstand next to my bed. Depending on the mood I’m in, I might read one or another. One is usually about business. One is usually a well known book like The Great Gatsby or Brave New World. I also have […]

Read more...

§936 · April 4, 2017 · Blogging, Books · (No comments) ·


3 months gone, and I’m 8 books into my goal of 26 for the year. How do I find to read? That’s simple – every morning, I have a goal to read at least 1 page of a book. It sounds trivial, but it’s a start. It gets you in a cadence. It creates a […]

Read more...

§934 · April 3, 2017 · Bob's Goals · (No comments) ·