Sunday, December 31, 2017

Full Circle

A year minus ~10 days ago today, I received my acceptance email from Hackbright Academy, marking the start of a journey that would quite literally change my life. Just a week ago, I accepted an offer from MakerSights, where I had been working as a software engineering intern for the past three months, to be a full-time junior software engineer.
Both occasions fell on the week of National Sangria Day, of which I had celebrated at Spark Social's bottomless sangria event.  I couldn't feel luckier to have been granted this good fortune two years in a row, and I'd like to think that this will be a continuing trend, both for the good news and sangria drinking.

As I think of the coming year and what I've had to put on pause in 2017 because of the career-switching, job-applying, and interning, here's what I'd like to see the 2018-me achieve:
  1. Become a morning person. That is, be able to wake up early enough to: 
  2. Go for regular morning runs 
  3. Finish my React Node web app 
  4. Finish my Warriors data visualization app 
  5. Cook Julia Child's Beouf Bourginon 
  6. Travel to Portland 
  7. Travel to Austin (during ACL) 
  8. Make a 1-s everyday video 
  9. Dye my hair 
  10. Attend a comedy show 
  11. Learn Spanish 
  12. Cook a whole fish 
So there you have it. Tangible goals, here we go!

Tuesday, October 10, 2017

Reflections of the End of Funemployment

As the blog title suggests, this [all too long] funemployment life is ending soon, which means hooray I will be working again! Earlier in September I accepted a 3-month internship offer at a startup and they were really gracious in waiting for me to finish up my other interviews and being open to negotiations (compensation/benefits/start date). I told them I was available to start work beginning of October, and they actually pushed my start date to the 16th. TBH I was super relieved to have been given this buffer of time to catch up on some much needed sleep, relaxation and me-time.

Even though I had initially been hoping for a full time job post-Hackbright, I'm really just eager to get started on my career in software engineering. I realized that an internship might actually be a blessing in disguise; I'm sure the learning curve will be steep and really hard, but I'm hoping that knowing that my main purpose is to learn above all else will make my transition into the industry a little less intimidating.

So far I have taken advantage of the remaining weeks of my funemployment (sans job search) by:

  • Sleeping, loads of it.
  • Visiting my sister, her newly adopted bunnies (4!), and my high school best friend in Corona/LA
  • Attending CRSSD and showing the bf my old stomping grounds in San Diego
  • Cooking, a lot! I've experimented with steak, artichokes, shoyu tamago, chimichurri sauce, lots of noodles, etc
  • Binge watching Parks & Rec (1 more season to go!), and many other shows on Netflix
  • Volunteer coding for SponsorLane
  • Building a full-stack app with the MERN stack...slowly but surely
  • Accompanying the bf to Santa Rosa for the Sonoma Harvest Festival. I unintentionally scored a free wine/food tasting experience there by befriending some winemakers from Ekitmo who were all too eager to meet someone who can speak Mandarin there
  • Purchasing tix to the Museum of Ice Cream. I couldn't help it!
  • Running more than I did while job searching, although still not as much as I'd like
  • Fooding. Did I mention food?
Also, if you haven't tried TJ's uncultured butter from Brittany, France, do yourself a favor and get it. 

With this carefree lifestyle coming to an end, I'm now back in studying mode. Actually, I don't think I've ever truly stepped out of studying mode for more than a day or two. It's been interesting having an unstructured lifestyle with no concrete obligations or schedule for the past few months (especially in this last month once I stopped job searching), but I also feel immense pressure to make the most of my time...even pressure to have as much fun as possible! 

For instance, if I wake up past 11am or noon, on one hand I feel like I've wasted so much time I could have spent in the park/beach/city, but on the other I'm faced with an internal battle thinking about how much I'm going to miss sleep once work begins. 

Another thing is I feel bad whenever I'm not coding and studying with all this free time, but when I do spend a good portion of my day coding and watching video tutorials, I feel bad not being out in the sun. I can't win with myself!
However I will say that I'm extremely grateful for these first world problems. I'm grateful that this startup took a chance on me, I'm grateful I made my personal goal of finding a job within the 3-month mark, and I'm grateful I won't have to go to bed wondering if I'll need to ask my parents to sponsor my unemployed self soon (at least not for the next few months). 

Also, honorary mention:
You've kept me sane throughout this process. Thank you, gracias, xie xie.

Tuesday, September 5, 2017

Resilience

Job searching is no joke. The amount of uphill battles, disappointments, ghosts, and self doubt is enough to make me wonder more than enough times if this will all be worth it. If I had to pick one lesson out of hundreds that it's taught me so far, it's the surprising adaptability of my resilience.
I've had an onsite interview get canceled on me, hiring managers/recruiters ghost on me, phone screens gone badly, multiple projects thrust upon me (3 in one week!), and countless rejections in this 2+ months job search so far. I can see all of these things happen again and again, easily. After all, there's no limit to how many rejections a candidate can experience in any given time frame. A rejection today doesn't mean there won't be another two waiting in my inbox in an hour, for instance.
However, through all this, I'm still alive and ok. I had coffee with a fellow bootcamp alum a few weeks ago, and she reiterated one thing I can always look forward to after an interview: the fact that after all that is said, not said, done, and not done, I can count on coming back to my nice and comforting bed.
Sounds silly, but this thought has done away with the tunnel vision of my interviews. The day (and life!) does not stop with the interview. Whatever the outcome is, I make sure I am ten steps ahead already, even if it's tiny, baby steps of making my way back to the warm embrace of my comforter.

I deliberately plan things to do after an interview before the interview even happens. I buy ingredients for the next dish I plan on conquering and have them ready in my kitchen to prep for when I'm done interviewing. I sign myself up for evening workshops at Rithm School to swing by to after a whole day of interviews. I make checklists of what I need to get from Trader Joe's so I can't just sulk my way through Powell Street and all the way home. I keep myself occupied to keep myself moving forward.
I attribute the resilience I've developed to the plan-ahead/look-ahead strategy I've built upon that bootcamp acquaintance's words of wisdom. .
Knowing that I have something to look forward to after an interview and when the job search ends is key. I will survive and I will get that job, and I cannot stop reminding myself of this when the going gets tough. Onward!

Sunday, August 13, 2017

Warriors Data Viz Project | Part I: The Inspiration

One of the things I really miss about Hackbright is project time. Is that weird? I loved the unobstructed time we had to ourselves to just be lost in our own code. I'd have "codepiphanies" during random times of the day--in my sleep, when I'm trying to relax with a glass of wine and Netflix on a Friday night, in the shower, on the Muni, etc, and they were enlightening.

Even though I technically have all my time to myself now, it's not the same. My time is still divided into chunks, and it's hard to be immersed in code when I'm worrying about applying to jobs, keeping my algorithms studying up to date, staying active in the community with events, etc.

Last week, Hackbright held a mini hackathon for three hours, which was a great motivator to starting a new project. Even though we could have just worked on our projects at home, having a special, blocked out time at the HB lounge with a TA and technical mentor there for help just made things different.

I started on a project I had been wanting to tackle for a while--data visualization using data on the Golden State Warriors! Why the Warriors? I didn't start watching basketball games--or any sports--until I moved to the Bay Area three years ago, so it's really fascinating from a newbie sports fan's perspective to discover how frequently and suddenly players can just be poached and traded. I remember Jesse showing me this after DeMarcus Cousins of the Sacramento Kings suddenly got acquired after the All Star Game by the New Orleans Pelicans, spurring a bout of confusion with everyone, including his own manager:

The New Orleans Pelicans flipped the NBA on its axis late Sunday night when they agreed to a deal for Sacramento Kings center DeMarcus Cousins, according to The Vertical's Adrian Wojnarowski. (Source: Bleacher Report)

I was shocked to find out that a player can suddenly be uprooted just like that! Also interesting to me is how the teams have to adjust their game and strategy to the trading of players. Just as a team has finally turned into a well-oiled machine after a season together, they could be sent into a spiral of having to go through this whole process again with the loss of some familiar players when new ones are traded in.

So I figured, since this is all so new to me, and I've been wanting to give a go at data visualization (nothing in my Hackbright project really required one), why not learn by doing? And that's how I absorb information the best: kinesthetic learning. If I have to wrangle with data on the Warriors, I'm bound to learn a few things about the different teams they had throughout the seasons while also learning how to use d3 to visually depict the whole picture.

I'm really excited! I've started building my scraper so I'll go into details on how I'm doing that in my next blog post of this series.

Monday, July 31, 2017

An Addendum to My Cover Letter

I've been submitting a lot of cover letters, and for my own sanity I've been trying to customize them as much as possible. The whole find-and-replace method for cover letters is really not my cup of coffee.

If I don't know that much about the company, I'll make sure I go through their website and find out what they're really about, read their blog (engineering blogs are even better), and comb through the Internet for any relevant articles about their products. Then I'll think of why I'd want to work there and how I can contribute to their platform, which is sometimes hard to do without having access to use it.

Then, I'll craft a well thought out cover letter and submit it along with my resume, links to my LinkedIn/Twitter/GitHub, etc. I can't not submit a cover letter when the option is there, that's my policy. I don't like to do things half-heartedly because I can't help but wonder: what if that one cover letter makes all the difference?

I've always believed that positive sentiments outweigh the negative, which is why my cover letters are all focused on the positive stuff. I'm optimistic about my skills as an engineer and I'm excited to talk about the projects I've enjoyed building on my journey to becoming an engineer. These things I can go on and on about.

However, I'm not oblivious to the areas where I'm lacking. Studies show that sometimes, all it takes is for one negative thing to ruin everything. So let's think of it in terms of my skill level as an engineer. I don't have a CS degree. I don't even have 1+ years of engineering experience. Already I can think of two basic requirements in almost all software engineering job postings that shed a negative light on my background. Which is why it's a hard pill for me to swallow that I can't dispute these cold, hard facts.

Instead of tiptoeing around my lack of a CS degree or years of experience, I wish I could address these points of deduction head-on in my cover letters. That being said, since I can't bring myself to invite any negativity into my cover letters, I realized that I can address these frustrating points in my blog:

1. I know I don't have a CS degree. I wish I did! I thought about it senior year of college but didn't want to have to go through all the prerequisite classes to get to the CS major classes when I was so close to graduating with two already-complete majors. However, I did self-select to enroll in Hackbright, where I was able to become proficient at Python, Javascript, and SQL (along with some other frameworks and tools like Flask, SQLAlchemy, jQuery, AJAX, etc.) enough to build a web application from start to finish, backend to frontend!

2. I don't have a full year of working experience in software engineering. And I'm not going to pretend and say I do because I can't speed up a year any more than the sun can. I do, however, have the work ethic of someone fresh out of college. I just graduated! Not from a 4-year institution, but from a 3-month full-time program that made sure I had a lot discipline (hello, 0 income life) before, during, and after the program. I had to save up enough $$ prior to applying to Hackbright, quit my job to attend Hackbright, be present and engaged in classes and lab all day, work on assessments that required hours of my time, design a project front to end, and present it in front of other engineers. I'll be damned if I let all this hard work go to waste by not giving it my all at whichever company decides to take a chance on me.

3. I have incredible experience in other industries (read: lots of soft skills). Prior to becoming a software engineer, I was in marketing. I've done marketing both in-house and at an agency. I've worked with 15+ different clients from the tech, lifestyle, and hospitality industries, many of them at the same time. I've managed our marketing team, and was described by my boss as her right hand. I know how to tailor my speech around different clients, email them at the right time, and decipher what they say and want so I can convey these requests to our project manager and designers. I'm great at empathizing, and I think that's something incredibly valuable that's incredibly hard to convey in a cover letter.

4. Because I just graduated, I'm like a sponge! I know I have a lot of catching up to do, which is why I want to continue learning. Since graduating Hackbright, I've attended a hackathon, helped a coding nonprofit write lecture material, attended many many coding meetups, signed up for a few classes on React and built a few apps with this framework, and I'm going to start learning Node.js next. Here's the thing: I'm just getting started. I'm not dead-set on my ways of how things should be in the world of programming like how some seasoned engineers may be, because I don't know what the "ways" are. I'm still discovering my way and having loads of fun while I'm at it, and I wish I could convey this excitement over the ATS.

So there you have it. If I think of more, I might add to it, but here it is. The addendum to my cover letters that have been/are going to be sent into the abyss of job portals.


Friday, July 28, 2017

Brief Breathers

This week I decided to take some unprecedented breathers from my usual job application-study-event routine. I still did all three, but I peppered in some new experiences just to spice things up a little. It's challenging sometimes not to get tunnel vision with the job search, so to put things into perspective I decided to sign up for some activities outside of software engineering to remind myself that there is a world outside of the one I'm so wrapped up in.

Intro to UX Workshop
On Monday I decided to attend General Assembly's free Intro to UX Design workshop. I've always wanted to attend one of their free sessions to see what it's like but it's usually during the daytime, which is not ideal for someone working the 9-5.

It was really fun! I loved how we honed in on the design decisions of various mobile apps and digital products, and then split up into groups to think of how we would design an imaginary festival app built by Spotify. It let me exercise my creative juices and think about something other than code for a bit.

Nextdoor Research Study
I'm a pretty active user on Nextdoor, the neighborhood app. I don't post that much stuff but I like to be in the know of what's going on. Whether it's crime, classifieds, or shop openings/closings, I like to digest it all. So it was no surprise that when a product manager reached out for research participants to test out something they're building for their app, I immediately signed myself up.

Plus, I always like to see what different offices look like. Because I myself have not been privy to working in big, fancy schmancy offices before, it's always exciting to see how spacious and nicely decorated a workplace can be.

It was fun being the second person to test out this feature/campaign Nextdoor wants to try and discovering all the bugs in their platform; I felt like one of those quirky field study participants on TV who can't stop asking questions and calling out things for not being user friendly. Being paid to be super opinionated is really fun!
Also, the method in which they recorded my actions on the app on my phone was hilarious: They had me hug an engineer's laptop from behind and play with their app in front of the webcam to record my motions. DIY recording at a tech company at its finest.

Volunteering to Pack Supplies for Homeless Youth (At the Crossroads)
This was also one of those activities I'd always wanted to do but haven't been able to because of scheduling conflicts in the past. I love volunteering at the SF Marin Food Bank, and I wanted to check out how other nonprofit volunteer sessions are run. They had 3 activities going on: pack bags of snacks, QA for candy packets, and write thank you cards to donors. Jesse and I actually got to do all three!

First, we worked alongside all these other friendly volunteers in an assembly line putting snacks in bags. When we finished, the nonprofit organizers had us stuff already really-packed packets of candy with even more candy. Basically the idea is that they give these packs of candies out, sometimes to groups of homeless youth, and they don't want there to be a difference in volume among the bags. So we had to shove as many Snickers, lollipops, Starbursts, Reese's, etc. as we could into each packet.

After a good half hour of trying to wrangle a few candy packets closed, Jesse and I decided to switch stations to give our fingers a break...and then subsequently found our hands cramping up instead writing thank-you cards to generous donors. It was all really fun though, and I loved how nice everyone there was. I'll definitely be back!


So, yes, with new perspectives gained this week, there's now a new motivation to keep chugging along the job search ride!

Monday, July 17, 2017

5-5-5

It's been 3(!) weeks since we've been out of Hackbright and I'm starting to wonder if I'll continue counting these weeks until I get a job. Probably. The 3-6 months average (for HB grads to find a job after the program) has been pretty much ingrained in my head. I hope I'm closer to the 3-month mark than 6-month mark.

Now that I've been out of Hackbright for 3+ weeks, I feel like I have a better idea of how my time has been intentionally (and sometimes unintentionally) carved out. Knowing what is and and isn't feasible, here's how I want my time to be carved out moving forward:

Introducing: Karen's 5-5-5 Daily Job Searching Rule (Mondays - Fridays)
5 Job Applications
5 Coding Challenges
5 Sections on Problem Solving with Algorithms and Data Structures

And wherever I can fit in some emails, I'll do it. Even though I can already see myself having some difficulty on days when I have meetups or coffee meetings scheduled, I think I'll adhere to this rule as much as I can, especially the first two.

On weekends I'll focus on building out my projects and reviewing coding challenge solutions.

We'll see how this goes!