Week 1 at MakerSquare

The first two weeks have gone by pretty quickly at MakerSquare. I’ve definitely been learning a lot and have constantly been challenged. To begin last week, we first reviewed some of the basics of Git, a version control system that allows us to keep track of and retrieve different iterations of our code. After that we got into data modeling in Ruby, specifically using arrays and hashes. We were also introduced to RSpec, a Ruby gem used for test driven development (TDD). A lot of emphasis was placed on how following the process for TDD is a very important concept and is an important discipline to learn for aspiring developers. Using RSpec, it quickly became clear how key TDD is. Without setting the expectations for what your code should do before writing it, you can run into many problems and the more code you write the more problems you’re likely to have. With TDD, you can take comfort in knowing that all the code you’ve written will work since you’re setting the expectations before writing the actual code. TDD also reinforces the Single Responsibility Principle. I was definitely guilty of often trying to create methods that attempted to do too much, but after testing my code constantly I’ve been writing simpler methods. To get familiarized with RSpec and TDD, we were first given a ruby file and and spec file with tests already written. Our job was to update the code to make all the tests pass. Not having to worry about how to write tests was helpful in gaining an understanding in what different tests were looking for. The next day, we worked on writing our own tests which helped us become more comfortable with the syntax needed for RSpec and how to write good tests. The first week also included our first lesson on algorithms and the big O. More important concepts were covered in that lesson, including the importance of being cognizant of the efficiency of our code and thinking about if our code can be refactored to use more efficient methods since time and space is not limitless. We ended the first week by beginning to work on a project called Puppy Breeder in which we were given a user story and asked to build out classes to fulfill the requirements. The Puppy Breeder project went on for more than a few days, which I’ll discuss in more detail in my Week 2 post!

MakerSquare Day 1

It’s finally here. After weeks of anticipation, the first day of MakerSquare has arrived. I’m feeling a lot of different emotions – anticipation, nervousness, anxiety, but most of all excitement. Going through the first day, I’m getting a clearer sense of the types of things I’m expecting at the end of the course.

While preparing for class there were a few ups and downs as I completed the prework and gained a basic understanding of Ruby, JavaScript, jQuery, HTML and CSS. The most difficult part of completing the prework process was not having someone to bounce ideas/thoughts/questions off of immediately when those arose. Because of that, I’m really excited about class starting and being in this immersive environment. I believe I’ll learn much more effectively in an environment surrounded by other students and instructors and I’m looking forward to working with the different people in class. I also think I’ll pick up more than a few techniques on learning new material or reinforcing concepts I’m struggling with. For example, today one of the instructors Shehzan Devani shared with us his thoughts about how writing a technical blog post helps to gain a better understanding of material since you’re trying to explain it yourself. Hearing that made me think “that makes a lot of sense, I’ll take extra steps to make sure I’m clear about something if I’m writing about it”. I hope I can post on this blog frequently throughout the course about both technical and non-technical material.

In preparation for class, my favorites parts of the prework were when the exercises called for building small applications, such as a Ruby application in which both people and banks could be created and deposits, withdrawals, and transfers of funds could be made. The instructors shared us with that the upcoming curriculum calls for a lot of project-based work. I’m very excited about building out more complete applications that are fully functional and having them in my portfolio to both showcase to potential employers and to have for inspiration for future projects. 

Finally, a common theme throughout the day has been that us students should constantly ask questions and we should provide as much feedback as possible. Everyone at MakerSquare genuinely conveys the feeling that they want us to become great developers and that they want us to learn as much as possible. Because of this, I’m even more excited about the upcoming 12 weeks than I was at the beginning of the day and I can’t wait for Day 2.

Working for a Smaller Company

I’ve spent my career working at big organizations. Deloitte is the largest professional services network in the world with over 200,000 employees. CNA’s size pales in comparison, but 7,000 employees is still a substantial figure. With my upcoming change in career fields, I’m hoping for my next job to be at a much smaller company, potentially even at a startup. Given my previous experiences in corporate America, I believe I’d find greater satisfaction working for a smaller company. Shaan Shah’s thoughts about the tech and startup scene is a great first-hand account about the positive aspects of those areas and was one of the contributing factors in my desire to change careers. While there are indeed many advantages to working for such large companies (benefits, stability, brand recognition, etc.), there are also distinct drawbacks, especially early in your career when you have to spend time moving up the chain to a position with greater responsibility. Granted, working at a bigger company in the tech field may be completely different from my experience, but I’d still like to work at a small company for a few reasons.

When I reenter the workforce after gaining invaluable skills at MakerSquare, I want to have a role that affects multiple parts of the company, not just one specific area. When working at a large company, your group is likely to have a relatively narrow focus. Big companies means there’s plenty of people to work in different groups focusing solely on specific business areas. Inevitably, your exposure will be limited in scope. At CNA, I worked in the statutory reporting group. There were other small projects I worked on, but the vast majority of my time was spent on one specific area: putting together the financial results of CNA’s insurance companies. Because of this, I didn’t have the opportunity to influence areas outside of that group.

I also want to be an integral part of a team that has a positive influence on the business. I want my contributions to be valued and unique, not the same as what another person would have brought to the table. One of the downsides I experienced at a big company is that you are eminently replaceable, especially at a firm like Deloitte. If somebody leaves the company, they just plug another body in. There’s always someone who can take on your roles and responsibilities and, at a minimum, perform at roughly the same level. It really doesn’t make you feel as if you’re valuable to your employer knowing you could be gone tomorrow and the machine would keep on humming along.

Going hand in hand with being integral, I want the opportunity to be innovative (granted, my previous career field of accounting is definitely not one associated with innovation). Most large, well-established companies are big for a reason. What they’re doing usually works so they don’t need to be at the forefront of innovation. They look for improvements to their current processes, not wholesale changes. In accounting, you often have to follow certain established procedures in order to complete a task. There usually isn’t a role for creativity which isn’t the case for coding. Startups often need fresh ideas and approaches to become successful. That’s a major reason I want to work in the tech field. Having the chance to shape the course of a business or a significant aspect of the business is really appealing.

The combination of these reasons leads to what I believe is the biggest negative of working for a large company – not having the opportunity to have an immense impact. In my last two jobs, even when working on small project teams, I felt like what I was doing would not have a notable impact within the context of the organization as a whole. For example, even if you’re working on a minor project at a company with 25 employees, what you do in all likelihood is going to have a relatively greater effect than if you’re one of a thousand. I want to be able to look back and reflect on what I’m doing at work and truly believe that I’m having a significant impact. Without that, I’ll continue to feel like I’m not getting what I want out of my career. However, I believe that working at a small company will give me that satisfaction.

New Beginning

I quit my job today. Do I have another job lined up that I’m going to be starting soon? No. Am I worried? No. Would that be the case if I told myself a few years ago I would be in this situation? Probably not, I bet I would be panicking. But at this moment, I’m not worried because I feel like I have an opportunity at a new beginning.

Many years ago (almost 8 to be exact), I began my time at the University of Illinois. I was in the College of Business, but had not completely ruled out becoming a doctor (I was 98% sure I didn’t want to, but hadn’t reached 100% yet). One chemistry class later, that field was out.  What was next? Accounting and Finance. Why accounting and finance? When I was in high school I was interested in “business” and the “business world” so I ultimately wanted a job in that arena. Having both degrees would be beneficial for my job prospects and majoring in both was fairly common among business students. I focused more on accounting since Illinois was a top ranked accounting school and many renowned companies were looking to hire accounting grads. Many accounting students at Illinois seek public accounting positions at one of the “Big 4” accounting firms and I was no different. During my junior year, I was fortunate enough to land an internship with Deloitte & Touche, one of the Big 4, for the upcoming winter. At the time, I was pumped. I thought my career arc was set and I wouldn’t have job worries ever again!

I was going to be in Deloitte’s audit practice. I knew that meant I would be auditing financial statements of various companies, but I had no idea what that really entailed (FYI for the 90% of my friends who think that means doing tax returns all day…..No. SMH). The team I worked with during my internship was awesome, but I was indifferent about the work I was doing. When presented with a full-time offer, I quickly accepted. I thought as a full-time employee I would grow to love the actual work. When I started working full-time, my feelings towards the work really didn’t change. Sometimes I liked it, but more often than not I wasn’t the biggest fan. The hours were long and the environment wasn’t great, but I kept doing it.

But why?

I told myself that the parts I liked made up for the rest. I did enjoy onboarding new staff members and teaching them about what they were working on and how to complete it. I also felt pride and had a sense of accomplishment at the end of each audit because I had played a part in its successful completion. However, that didn’t come close to outweighing the negatives. One reason I didn’t leave this job immediately was the fact that most people end up leaving public accounting within a few years. They leave for positions with better salary and better work life balance, but are able to obtain those positions because of their time spent in public accounting. I envisioned a similar scenario for myself. I still believed that my background in accounting and current profession had set my career path for life.

After leaving Deloitte, I joined CNA, a collection of various insurance companies. I worked on preparing financial statements and other regulatory filings. Was I happier in my new role? For a little bit of time I was, but I soon began to feel like I wasn’t getting what I wanted out of my career. The work often didn’t interest me and the material was not what I wanted to develop a deep understanding of. I looked into other accounting and finance positions at CNA that I could transition into down the line, but nothing really appealed to me. I eventually found myself spending a good amount of time each day thinking about how much I didn’t want to be there. The last couple months when the clock hit 3:20 I knew there was about 100 minutes left until I would leave for the day and I would start counting down. That’s no way to live life, but what choice did I have? I had only been at CNA a few months. I had left Deloitte for another accounting position that was supposed to bring me long-term happiness. I was an accounting and finance major. I had been working in accounting. Why wouldn’t I be happy in an accounting or finance job? I was doing what I thought I was supposed to be doing.

It takes a long time for some to accept the fact that they don’t have to continue on their current path. It can be tough to acknowledge that what you’ve spent years of schooling and working on is not what is best for you. Luckily, I’ve reached that point and have accepted it. Again, I quit my job today. The timing of my departure is definitely not ideal for my current team, but I have to do what’s best for me. So what is next for me if it’s not another job in my current field?

I’m going to MakerSquare. I’m going to become a developer. Why do I want to learn to code? I want to be able to build things. The thought of coming up with an idea and having the skills to develop it into a real web application is really exciting. As an example, the last two years I’ve run an NFL picks league with my friends. It’s pretty simple: each week I would send out 5 matchups and spreads from that week’s slate of games and everyone would make their picks for who they thought would come out on top. Not only did I enjoy the competition aspect of it, but I really liked running the league. Every week I would record the picks in Excel, and then send out an Excel spreadsheet with the results. It’s a fairly basic setup currently, but what if I had the ability to code and build a website that would send the games to everyone, log their picks, and display updated standings in real time? Just thinking about that makes me very excited to learn to code and I would love to spend my free time building that. And what if this feeling wasn’t just for my own time? What if I land a job where I’m working on building a website or application through code and I’m just as excited? What if I come up with a business idea of my own that I can build through code? What if I develop something that makes a meaningful difference in the lives of others? What if I’m just as happy at work as I am outside of it? The thought of each of those brings a smile to my face that’s tough to remove. In addition, I can’t wait to spend time learning new things again. And after MakerSquare, I don’t think the learning will ever stop. With new technologies, new languages, and never-ending level of knowledge in each language, the world is my oyster. I can’t wait to start the journey.