Week 0

IMG_0199.jpg

I completed my first week of work as a Web Developer. Here is a quick summary of what happened.

Orientation
There were seven other people schedule for the same orientation. They consisted of people assigned to various departments and levels. The group had interns, part time employees, full time employees, hourly employees, salary employees, basically the most diverse crowd for an orientation I have seen.
After some administrative tasks and presentations we took a tour of the building and checked out four of the eleven floors in the building. Yes the company works on all four floors. We also got a sneak preview of some of the many active projects/sites that the company manages.

Understanding
The remainder of the week I started my various components for my training. A couple trainings required by the HR department and the rest relating to technology. Some of the topics covered were understanding team workflow, team structure, various processes, an intro into the company content management system and many other topics. There was tons of information I covered, too much to list here.

Feeling
I recall the feeling I had after completing my coding boot camp. It felt like I was able to physically see hundreds of doors open and I didn’t know which door to go through. After getting invited to work at IB, it now feels like I have been pulled into one large door only to realize this was a door to another, much larger universe. Much like the final scene from Men in Black II (check out the last 15 seconds).

Guilt
I have to be honest. I feel guilty for getting paid for what I do. I heard from developers before that we get paid to learn. I just didn’t realize I would feel guilty about it. I really do enjoy the path I have taken. Hopefully I will get used to it one day. I am glad I get to learn, organize, build solutions and code for work. I like it… a lot.

Tips
There is so much information to take in so…

– Mind Map everything that seems confusing or unclear.
The process of building these maps has helped make more sense of things. My favorite app right now is MindNode, but it doesn’t really matter which one you use.

– Level up
Always keep learning, everyday.

– Learn to Project Manage your life
In another post I will share my schedule and tools I have been building on for quite some time now.
I have recently moved from managing my daily, weekly and monthly tasks with OmniFocus to Trello.
Trello allows me to have more customization for organizing my projects, recurring tasks and other GTD tasks (Getting Things Done). Some info about GTD wikipedia and gettingthingsdone.

Philosophy
Craft
n.
Skill in doing or making something

Craftsman
n.
A person who practices a craft with great skill

Everyday.

Tick Tock

IMG_0166.JPG

The Monday Interview
As I eagerly await the start of my interview I am escorted into the room we had reserved for the next two hours of my life. The room was dead silent making the clock located near the top of the photo excruciatingly painful to listen to. I was ready and nervous, so I had a notebook ready so I can write down what happened incase I blacked out.

Some stats about my interview:
It can be summarized into 3 parts.
I was schedule for 2 hours but ended up staying for about ~4 hours.
It was a lot of fun.

Part 1: Estimated Duration ~ 15 minutes
The Recruiter
For the first part of my stay I was able to meet face to face with the recruiter that had reached out to me so that she could get to know me. In my nervousness I had forgotten most of the questions she asked but they were mostly about my resume and some personal details to illustrate who I am.

Part 2: Estimated Duration ~ 30 minutes
The Project Manager
During the second part I met with the project manager for a potential team that I was being interview for. We had gone over my resume and he checked out my personal website. After that introduction we began the technical part of the interview. We went into questions discussing various topics in programming that required me to answer by definitions and explanations to demonstrate my understanding of various topics. We also went through some algorithms followed by more technical questions.

During this part of the day I was not feeling so hot about my performance so far, but I knew what I needed to do afterwards. I need to get better at expressing my knowledge and understanding in technical explanations. I also needed to brush up on my vocabulary so that I can make a clear connection between topics and to demonstrate that I know what I am doing. At the end I was already starting to feel defeated but tried to calm down and convince myself otherwise.

Part 3: Estimated Duration ~ 2.5+ hours
The Technical Director
This was my chance to redeem myself. Considering the amount of overtime we went on our room reservation I think I did okay.

In summary here is a list of hings I did that might have helped me:
– Asked a ton of questions
– Prepared some even before I arrived
– Asked some questions about the tasked I would be performing “if I were selected”
– Expressed my genuine interest in the company, role, team, services they provided and culture
– Did my homework on the company
– Asked more about it because the internet didn’t have everything I was hoping to learn about the company
– Kept learning everyday before the interview and even during the interview
– Paid off when I got the questions “What have you learned on your own? How did you learn it?”
– Focused on getting better, even during the interview
– Talked out loud to demonstrate my problem solving skills
– Asked for clarity on questions and algorithms
– Took a ton of notes during the interview
– Explained my answers whether it was a confident answer, a guess or an educated guess

At the end of the day I think I did pretty good.
After a few days the recruiter emailed me saying “We would like to go forward with your candidacy!”. It’s unclear exactly what that means to me so I will have to wait until my reference check clears, background check clears and starting date is established.

Until then I shall continue to develop my craft…

Coding + Mind Mapping

Quotefancy-2689-3840x2160.jpg

I am so glad I learned how to code this year. For the latter part of my life I have been searching for something that I could do everyday that would bring me joy. I knew I was always into technology but this year it was time to learn to build things with it. Programming tests me everyday to make sure that I keep challenging myself. Some days I feel like I am a boss at it. Most days I feel like a total noob, but I keep coming back for more.

My bootcamp experience taught me how to learn and tested my patience for this new found discipline. The above quote is an excellent summary of how I learn best.

“Tell me and I forget.” I have a terrible memory. In one chapter of my life I learned to not trust my memory and write things down. This habit I have developed helped to organize my life better.

“Teach me and I may remember.”. Lectures definitely do not stick. Even in elementary school and high school, I was never really able to pay attention the whole time in a lecture. During the bootcamp I was somewhat able to because it was usually a demo or at least it was involving my new found passion, coding.

“Involve me and I learn”. I like how involved we get to be when learning to program. I get to practice and try things out while following along with a lecture, demo, book, video and whatever other source I might be using. The best way to learn to code is to code!

Sometimes coding seems really difficult for me to understand because a lot of the things I am learning are usually abstract ideas. I am a very visual person so I found that mind mapping really helps me pick up new topics.

According to litemind, information in a mind map is structured similar to the way the brain works. It is also an activity that engages both halves of the brain.

If you haven’t tried out mind mapping, I highly recommend it!

There are many different programs out there that do the same thing and it usually comes down to preference which one you choose to use.

Check out this one at coggle to get started.

Otherwise, I’m going to back to coding!

Start of the Next Chapter

blacksmithing

We have to live life with a sense of urgency so not a minute is wasted.
– Les Brown

Welcome, to the transition to the next chapter. I now have a clear path in my mind. I am a Full Stack Engineer. Right now I am focused on honing my Front End Engineer skills. I build web apps, I make functional interfaces, I care, I am hungry, I am organized, I am fun, I like being outside, I like to code, I am interested in all tech, I am a programmer, I am an apprentice.

I have been studying Front End Technologies.
I almost have the whole process understood.
React apps are in the making right now.

Status Report:

Apps = 14
TopCompanies = 3
ShouldApply = 1
Books = EJS 4/21 CTCI 0.5.20
ActiveProjects = 3
Topics = Data Structure, System Design, Javascript
Mentors = 0
Interviews = 0
MeetUps = 1

Dojo After Dark is Live!

Screen Shot 2016-11-13 at 9.51.58 AM.png
Checkout my open source project at Dojo After Dark!

This week we added a bunch of features to help move us into the next phase of development.

Here are some of the cool features that were recently added:

– Awesome neon signage on the home page and home button in the navigation bar.
– Auth0 login so you don’t have to make a new account!
– After logging in you can find the weather at the Dojo on the top right near the sign out button.
– Ninja cards are automatically created for all users that sign into the site.

Some features still in development but able to see:

– Ping Pong score tracker
– Notifications
– Other pages linked in the navigation bar

I am really excited about the project because the code base is growing bigger and bigger each week! Working on Dojo After Dark has really helped me improve my coding game. This is the first real project that I have been extremely passionate about. I am very grateful to have gotten a lot of support from my peers. Every coder should definitely work on a project that they can play with. I remember watching a video or documentary that said the best way to learn is through play. It is how kids learn so fast and how adults should continue to learn.

Dojo After Dark is a playground where developers can take the project, read it, develop a feature, practice using APIs, practice front end design, practice back end coding and really anything.

I hope that more people take on projects like this, or even this one, so that they can improve their programming skills. I believe that learning to program is similar to learning how to build a house.

Before we can put together a house we need to some tools.
We then need to learn how to use our tools and keep them sharp.
We study how to build a house by reading about it, learning from others and practicing building smaller components that make up a house.
Over time with practice and dedication we have created many small components that will eventually make up a whole house.

This is why I like to think about programming like blacksmithing.
It is an art.
It is something that we need to practice.
We have tools we need to learn.
Sometimes we replace tools or need new ones.
Sometimes things break.
We learn how to fix them or build them better tomorrow.

Join us at Dojo After Dark for some discussions about various topics!
Last week we went over the front end styling framework Bootstrap 4.
On Wednesday’s we are having our book club meetings.
This coming week will be our first meeting for Eloquent JavaScript.
Read Chapter 1 & 2 before then.
We will be doing the exercises together.

Hope to see you there!

Sneak Peak Inside Dojo After Dark

logo.png

As I wrote in my last post, this past month I have been given the opportunity to work with a live code base. It has been extremely intimidating because of the sheer size and complexity of project. This exposure has inspired to me create my first large scale project. The project is Dojo After Dark.

Programming has really made a positive impact on my life. I find it fuels my passion, inspires me to bring ideas to life and challenges me. This past week I have taken the initiative to layout part of the foundation this project. What is it? In summary it is an open source project whose purpose is to build and inspire a community of developers.

Dojo After Dark gives the current students and alumni of the Coding Dojo an opportunity to:
– contribute to an open source project (It is going to look good on a resume too)
– house your personal site, project, resume, etc.
– continue developing your skills
– explore a live project created by many people just like you
– be part of a community of developers with a passion for coding
– explore code
– have access to an ever growing code base
– learn both new and old technologies with others
– provide an environment that will act as an incubator for new developers
– and much more!

Come check us out at the Dojo After Dark and get a copy of the project.
Monday – Friday
6pm – 8pm

We are having our first book night next Wednesday! The first book we are tackling is Eloquent JavaScript. Read chapters 1 & 2 before the meeting and we will go over the exercises together and answer any questions that come up.

Looking forward to seeing what this project will become!

The Test Drive

Social_Network_Analysis_Visualization-1170x600.png

This is a data visual generated by d3.js. At times code looks like this to me on the surface until I begin having a good understanding of what all of it means.

This past week I had begun my first live project. I call this my Contracting Test Drive. It was my first look into legacy code. Legacy Code is defined as: “code that relates to a no longer support or manufactured operating system or other computer technology”. Some even define it as: “code that was not written today”. The codebase so far has been extremely intimidating. The total of all the projects created by everyone at the Dojo during my 14 week boot camp does not compare to the size and complexity of this project. I have spent so much time trying to understand the overall workings of the codebase. I feel like the tortoise in the race against the hare. I feel like it is taking me a long time to understand the whole site. Despite my feeling of incompetence towards the code, I am sure that I will prevail.

During the week I was able to assist in the tackling of my first ticket (issue in the codebase that needs to be fixed). It involved one of the first few topics that interested me, MySQL database queries. Out of all the things that I have learned in the boot camp, database query and database construction has always intrigued me. It was the reason why I decided to join a boot camp in the first place. When I was teaching myself iOS development I ran into the issue of not knowing anything about databases, thus inspiring me to search for a boot camp.

The process for completing this ticket was done through pair programming, which is another of my favorite ideas that I had learned in the Dojo. I find that reading and talking about the same code with another person is extremely beneficial for all parties. It makes the learning and editing process so much smoother than I could have done by myself.

This week has reminded me what I have heard from many developers. Some days feel impossible while some days go really smooth. Coding definitely still feels like that roller coaster that I had experienced in the bootcamp. I am glad to say though that I am not bored with it. On my spare time try to get some reading done, learn a new library and work on my algorithm skills. My current materials are: Eloquent JavaScript, d3.js and Codewars as my algorithm platform. I enjoy the everyday challenges involved in the coding world.