Sunday, August 6, 2017

adventures in a tech internship

In which I copy-paste my day logs and comment on them in hopes of passing them as a legitimate blog post.


Some context: This summer, I spent Monday-to-Fridays interning at ARMUS Corporation in San Mateo. I was super lucky to be able to have my first tech job in such a close-knit environment, where all the workers were friendly and talked to you on a personal level. I started out on the Data Science team, working in R and Shiny. Later, I worked in QA and metadata, which made me think of myself as some sort of exterminator -find the bugs in the product and kill (fix) them in XML! It was a little disorienting to be thrown in the corporate world with lingo such as “sprint meetings”, “JIRA tickets”, and “PTO/WFH”. My stubborn nature compelled me to sit at my computer and struggle alone through learning Git, working in the command line, fighting with docker, praying to the Jenkins gods, and manipulating databases, until I realized that every single person sitting next to me had gone through similar processes and would be happy to walk me through them. When will I finally decide right off the bat that asking for help (after giving a valiant effort) is not a weakness!?! A ton of thanks goes out to all the people at ARMUS who spent their time teaching me not just coding processes, but also project management, Silicon Valley culture, business dealings, college tips, foodie recommendations, the trials of parenting, carpool lane violation conditions, beer brewing [not just the OS X package manager], and how to solve rubik's cubes. Anyways, enjoy.


One more note: I actually began interning on June 5, but it took me until June 19 to decide that keeping logs would also force me to record my work hours ;)


6/19
-learned to connect data table to database on PostgrSQL
-listened in on Data Science demo to ARMUS
-learned more SQL + R
-working on "add metric" functionality #a part of ARMUS other than data entries/harvesting for hospitals is providing services such as data analytics to understand which national benchmarks set by registries are being met or not under what metrics (conditions/procedures).
-8:30-5pm


6/20
-8:30-5pm
-more R + SQL tutorials
-keeping track of how to clear connections to PostgreSQL
-still working on add metric
-added pdf downloader


6/21
-8:30-5pm
-summer solstice!
-ahhh did my first demo :O pretty nervous, but gained a lot more ideas to discuss tomorrow! #a scary moment of demoing our project to data scientists in Michigan. However, they were very encouraging, and one of them even messaged me afterwards to say good job :)
-ate lunch w/ s.+ pros/cons of women's colleges #s., the office manager, is very insightful in her college advice.
-finished reactive sts inputs
-finished add a metric option!!!!


6/22
-8:30 - 5pm
-Data Science Team Meeting
-Koja for an hour long lunch #on Thursdays, Off the Grid and some other food trucks visit the office building to give workers an overpriced reason to breathe fresh air (jk the koja tasted good!)
-worked on some docker #what even are containers???


6/23
- 8:30 - 5
-reviewing code files for modularization/optimization #less is more
-doing some rmarkdown
-looked at a lot of reddit and gifs #haha distractions oops
-more SQL training
-installed Ubuntu on Virtual Box for Shiny Server


7/5
-back from break
-b. is leaving :(
-time flies when coding!
-8:30 - 4:45


7/6
-8:15 - 4:45
-git help!! #pun intended. I could not figure out for the life of me how to fix merge conflicts in the terminal (until later)
It's not a Git error message, it's the editor as git uses your default editor.
To solve this:
press "i"
write your merge message
press "esc"
write ":wq"
then press enter
-ahhh everyone so nice in teaching me the ways of JIRA #sorry for accidentally uploading 44 incorrect files T_T
-more hiring of people, interesting to see different lives #such as learning what escrow is


7/7
-8:30 -4:45
-lunch: 12:15-12:45
- lots of stats lessons
- can track dr. oz's surgeries for past 20 years? o.o
- looking over commonalities in RFP/RFI #business side of developing contracts with clients
- more QA
- configuring packages for shiny to be demoed


7/10
-8:45 - 4:45
-nice company lunch together :) #haha thai food is the one thing that can bring physically bring people to the office


7/11
-8:45 - 5:00
-go to meeting
-when there is free lunch, everyone comes to the office!


7/12
-8:45 - 4:45
-nervous to ask for more technical work? #here was a struggle because the data science team temporarily disbanded, and I was tasked to QA, which was monotonous to do for 8 hours a day to say the least. However, it took a fellow intern’s encouragement for me to finally ask my manager for addition work aside from QA. That’s how I got into metadata!
-learned a lot of business/management concepts
-intern notes: confusing to have a lot of platforms thrown at you, without knowing what to do with each one
-largely self-sufficient, which is fine, but downside is isolation without having a full picture of the company
-ex. just completing jira ticket after jira ticket
-company workers very nice though! :)


7/13
-8:45 - 3:45
-falling asleep from QA :P
-smoked salmon
-hopefully start XML


7/14
-8:45 - 5
-clerical work = flexibility? or just lazy lol #here I did some office work to help out. Yes, it’s not hard core coding, but it actually helped me understand the bigger picture in what the ARMUS does.
-hmm how to occupy time? #memes and reddit
-starting metadata!


7/17
-8:30 - 5pm
-ahh thank you so much
-so hard to set up docker/get permissions/just to access the metadata #OPS has such a hard job in being tasked with keeping track of user privileges!


7/18
-8:45-4:45
-pizza day! #thank you for costco runs!
-haha did ONE ticket, passed jenkins, can see on develop branch! #probably excessively proud of fixing one metadata bug, but hey, it passed!
-stuck on the next one now :(


7/19
-9:00 - 5:00
-Happy hour discussions at 11 AM? #yup that’s work
-YAY more QA -but get to fix bugs now #here i was dubbed the exterminator -seek and destroy
-ate some nectarines #yummy fruit
-jenkins for 2 builds about to pass... O_O #will they make it??
-IT PASSED (failed after building for 17 hours the other day) #YESSS
-more happy hour discussion on hyper loops and why we should go to mars #i guess this is what we daydream about now, aside from lamenting the current government
-everyone wishes it was Friday, similar cynicism on the plight of the world
-mood: reflective, why what how


7/20
-8:45 - 3:15
-no one at the office again… #sigh when everyone WFH
-learning how to solve a rubik’s cube!
-going to the oral surgeon now… #goodbye wisdom teeth, hello nausea
-yay more docker stuff #at this point, it was getting annoying having to repeatedly enter docker ps -a, docker-machine restart, docker-machine env, eval $(docker-machine env)...on and on. Darn docker daemon stop being so lazy! (in retrospect, i was probably doing something wrong ;) )


7/21
-9:00 - 5 PM
-TGIF
-CHIPOTLE! #there were two coworkers who kept a burrito count on the whiteboard until they gave up and simply wrote infinity. Every single day for lunch they headed to the nearby Chipotle for THE EXACT SAME ORDER!!!
-LEARNING HOW TO IMPORT AND EXPORT/HARVEST DATA IS HARD #it is
-whew more rubiks cube practice :D


7/24
-9 - 5 pm
-solved merge conflicts and completed 3 tickets! #progress
-rip i think i have been running an incorrect build/test this whole  time... O.O, no wonder why the errors  Jenkins caught did not pop up the first time testing locally #whoops apparently maven does have a purpose
- finished QA of all versions
-STS sprint meeting tmrw
-getting some stuff done nowadays #yay i’m useful!
-figure out why maven is failing -> database does not exist?
-persistence.properties file maybe


7/25
-9 - 4:45
- got sprint work!
-meeting lasted 2.5 hours… #playing a conference-meeting game bingo is quite fun, and especially satisfying to hear phrases such as “Sorry I was on mute”
-ahh need to actually complete tasks #pressure of work starts to build
-beginning to enjoy the console -thought it was hard #you can actually nano entire essays. Look it up!
-more CLI skills
-https://www.linux.com/news/cli-magic-see-changes-word-word-dwdiff


7/26
- 9 - 5:15pm
- more fixing stuff
- made some diff code to file process and make metadata QA faster
- wrapped up more tickets :D


7/27
- 9 - 5pm
- wooo wrote the diff query
- more importing data
- need other test data versions


7/31
-8:45 - 2:30 pm
-more rubik’s cube
-trying to file import #unfortunately failing. Until WOW the docker actually does run a local version of the application after configuring like 20 different files (an exaggeration).


8/1
-9- 2:15
-client deals sketchy >.>


8/2
-9-2
-last day happy hour! (apple cider for me)

So yeah, that was my tech internship in a nutshell. I got extremely lazy in writing my logs near the end due to the need to actually complete work at work. I’m sad that job has ended, and even more devastated at the end of my minimum wage paychecks. However, I’m looking forward to coming back next year to struggle with whatever new software process they develop while I’m at school :)

Saturday, August 5, 2017

Progress Report Update: 1 Year Later...

One year ago, on August 5, 2016, I wrote a letter. It was during the end of the Girls Who Code Summer Immersion Program, and we all composed thoughtful emails to our future selves, reflecting on what we learned that summer and how we hoped to grow. And now that email has arrived. Let’s see how well I fared, shall we?




Dear Kaitlyn of the Future,
I hope you finally learn a programming language well. Get that app on the app store!!! Maybe you will even lead the robotics club. Most of all, I hope you have good friends and are happy with yourself. You are great just how you are! I think that you fear being different or not pleasing others. I cannot stress enough how you should be kind and humble but still strong for yourself. Internal resources: definitely my confidence and people skills have improved. I can pretty much joke around with anyone, probably because I look so non threatening. Use it! :)
YOU WILL DO FINE NO MATTER WHAT. (But i hope i become robotics captain). Even if I don't become exactly that, I want to start a tech camp for young girls so programs like GWC will be a thing of the past. These goals matter to me because I truly love the tech culture and people. I think they have a lot of potential to help the world.
I will remember what I have to offer by looking back at my accomplishments and setting even further goals for the future. Maybe affecting the world sounds a bit arrogant, but I can start out with the community :) If time travel works out and I see you in the future, I hope you finally get those braces out. YOU WILL ALWAYS LOVE YOURSELF AND OTHERS. thank dumbledore.
be
-Kaitlyn (15 yrs old)




“I hope you finally learn a programming language well” - Not entirely sure on the extent of the word “well”, but I did complete AP Computer Science during the school year, and had a good time practicing with Java. I also took a trip to D.C. to showcase the app project that was based on what we worked on during GWC, and I recently finished a community college course on Ruby. Oh, and I interned at a software company working on R, SQL, XML, and Shiny. So huh, I guess I did at least learn a programming language well [while having fun!] :)


“Get that app on the app store!!!” - Sorry, not yet past Kaitlyn. Although I do think it would be cool to work in Unity for some sort of Google cardboard app that can help destress users with a form of virtual meditation. Idk.


“Maybe you will even lead the robotics club” - Haha yes you will. Even though senior year has not officially started yet, a lot of efforts have been made in trying to pull the club together. So far I’m pretty happy with the work the team has put into creating curriculum guides, planning for competition, and preparing for outreach. They all have specific goals and ideas, and as captain I want to be able to mesh everything together and give them the resources to build that mechanism or install a new autonomous program. The hardest part is corralling the robotics kids onto the same page with mentors, advisors, and parents. Efficient communication is a must, and reading the book How to Win Friends and Influence People has been really useful in giving examples of effective collaboration techniques (I promise it’s not a manipulation guide or a how-to-brainwash kit).


“Most of all, I hope you have good friends and are happy with yourself. You are great just how you are! I think that you fear being different or not pleasing others. I cannot stress enough how you should be kind and humble but still strong for yourself. Internal resources: definitely my confidence and people skills have improved. I can pretty much joke around with anyone, probably because I look so non threatening. Use it! :)” - I am glad to say I have kept the good friends around me and even made new ones from my time at Girls State and other events. Although we haven’t been able to meet up as much due to work/internships/travel, I am looking forward to school to be able to see everyone again! I like to think that I am happy, but maybe that’s just a Slytherin thing (see previous post). And yeah, stay humble kid, but also stand up for yourself -someone will have to make those decisions for robotics that not every single person will agree with. And sure, looking like a 12 year old may come in handy, who knows?

“YOU WILL DO FINE NO MATTER WHAT. (But i hope i become robotics captain).” - Gee, obsessed much?

“Even if I don't become exactly that, I want to start a tech camp for young girls so programs like GWC will be a thing of the past. These goals matter to me because I truly love the tech culture and people. I think they have a lot of potential to help the world.” - Done! Proud to say that teaching Girls Who Code at the local library every week was the highlight of my Saturday during the school year. After teaching an additional microbit summer course, year two for GWC is about to begin. Would it be shameless to say that one of the perks of teaching is tagging along on the tech field trips for free food and swag? A year later, with more tech conferences, volunteer events, classes, hackathons, and community meetups attended, I have a slew of lanyards and attendee badges hanging on my doorknob. Do I feel like an enlightened tech evangelist? Not really. Have I met many cool and passionate people in tech that will reply to your question at the drop of a hat and email you 25 different links to scholarships, internships, and hackathons? Yes. The strong, collaborative spirit of the tech community is one of the reasons why it’s so enjoyable to be a part of, and I have a lot of faith in some concrete solutions rising out of all the linkedin spam.

“I will remember what I have to offer by looking back at my accomplishments and setting even further goals for the future. Maybe affecting the world sounds a bit arrogant, but I can start out with the community :) If time travel works out and I see you in the future, I hope you finally get those braces out. YOU WILL ALWAYS LOVE YOURSELF AND OTHERS.” - Yeah, that’s the vague, insecure, teenage angsty me. I cringe. One year later, I’m a little more cynical, still in want of time travel, and hiding from the Senior Portrait takers until my braces finally come out.

“thank dumbledore.” - On book 6 /7! #cedricdiggorylives

“be
-Kaitlyn (15 yrs old)” - “be” may be a secret code for something -in any case I forgot :) Sincerely, Kaitlyn (17 yrs old in 24 days)

Overall, from reading this year-old letter, the idealism and ambition of youth really stand out to me. One year ago, I was “set” on my path in computer science, gunning for the position of robotics team captain, and yelling at myself to become a virtuous and kind person who is confident, strong, and generous. One year later, I question whether software is the path I want to pursue, I question if the robotics team will place near last yet again under my direction, and I question whether I can be a good human being at the very least.


Now, I have my driver’s lesson, my first internship completed, and my wisdom teeth pulled out. Rather than ticking off all the checkboxes my 15 year old self set for me, I now see a dynamic to-do list that grows with each new experience, reaching towards directions that I have never imagined before. Thank dumbledore.