My First Week as a Developer

So on this past Monday, I started my first week as a Rails developer at CrateBind. Needless to say, it’s been a rollercoaster ride of emotions from Monday to Friday filled with peaks of well written functioning code to valleys of doubt and insecurity with every character I type. My entire week could be described as filled with excitement and terror!

excited

Fortunately, the work environment is fantastic. Everyone is super friendly and always willing to answer all of my questions or just chat for a little bit. I really feel like the environment is suited to foster the growth of all employees, which is fantastic and makes me feel right at home.

workplace

I can sometimes set very high standards for myself and I recognize that has been the source of a lot of my stress this week. However, despite being hard on myself, I learned many important things this week:

  • I don’t know everything about programming, and even more importantly, I’m not expected to. I’m a beginner/junior developer and in addition to contributing as much as I can, my goal should be to learn as much as possible!
  • As hard as it is to see right now, I don’t suck, I’m just not experienced.
  • Ask questions, ask questions, ask questions! This one was a hard lesson for me. Everyone is busy working on features, bug fixes, or are starting new projects and sometimes I would hesitate asking a question for fear of bothering or pestering them. What I’ve discovered is that is indeed NOT the case and people are super willing to offer help.
  • Don’t give up. Be persistent, but at the same time, don’t beat your head against the wall trying to solve a problem. Take a break. Give your brain some time to rest and internalize the situation. It’s called Passive Learning. When you come back to the problem, try approaching it from a different perspective! This has worked almost every time for me.

I am extremely excited to be where working at where I am and I’m looking forward to more lessons in the future. In the mean time, time to prepare for week two!

prepared

“Don’t Call It A Comeback”

back

It’s been awhile since my last post but I’m excited to be back! A LOT has happened since I last gave an update. Here’s a quick summary:

  • Completed the MEAN stack and earned a Red Belt
  • Got a 15 inch Macbook Pro! (May my PC rest in peace…)
  • Completed the Ruby on Rails stack and earned a Black Belt
  • Updated my resume! (This was fun…)
  • Worked on several projects to beef up my resume/portfolio including learning React Native! (Woot mobile development! Btw, click HERE to check out my portfolio!)
  • Started attending several tech meet up around the DFW metroplex and met many really cool developers from all backgrounds (Even music!)
  • Apply for jobs, apply for jobs, and apply for more jobs…
  • Go on my FIRST developer interview!
  • Apply for more jobs…
  • Speak to many recruiters about different positions
  • Apply for more jobs…
  • Not get a call back from my first developer interview!
  • Apply for more jobs…
  • Go on my SECOND developer interview!
  • Apply for more jobs…
  • Go to more meet ups, meet more awesome people, work on more projects, and speak to a few more recruiters, and apply for more jobs! (I lumped these all together because at this point it felt like all of these things were happening  simultaneously)
  • Go on my THIRD developer interview and receive an offer!
  • Accept offer and now I start my new profession tomorrow!

All caught up??? GREAT!

self_five

Seriously, this has been a crazy month since graduating from the bootcamp in early July. I’m grateful for all of the support from my family, friends, and especially my wonderfully optimistic girlfriend. I absolutely cannot wait to start this new profession!I know I still have so much to learn but I’m very eager to get started.

Here’s to tomorrow!

It’s a new day.

 

 

Week 5 – Day 6 (Saturday)

This week leading up to the exam has been action packed. The good news is I’ve learned A LOT about myself during this whole process. I’ve discovered what I am capable of and my limitations.

work

Also that asking for help is NOT a bad thing as obvious as that sounds. I wanted to learn coding and not be told the answers but sometimes, especially when doing something completely new, it’s not a bad idea to ask for guidance.

help

On to the exam. Just FYI, “Black Belt” means scoring at least a 9.5/10 or higher. So Coding Dojo has this to say about their exams:

“Know that many of our black belt students had to take the belt exam two or even three times. These exams are NOT easy. We give these exams to those that apply to join Coding Dojo staff as an instructor/consultant, many of whom have 5-7+ years of experience, and 70-80% of them fail the exam.

Do NOT get discouraged, and even if you fail the first time, take it again until you can earn your red/black belt. We believe that all of our students can get belts. It’s just a matter of time and perseverance.”

 

hard

Now, with that all said, the exam was hard but I think it was doable! Without getting into the details, it involved the concept of database tables and self join. Kind of a tricky topic for someone who is just learning but I started with what I knew and went from there. All in all, I completed the exam in just under 5 hours. I turned in what I had and sat in my chair for a few minutes just to decompress.

decompress

While I was sitting, I had a thought. A little over a month ago I had absolutely no idea how to code. In just 5 week I have learned to create a simple but functioning website that is actually deployed on the internet for anyone to see/use…

I then compared it to my first month of teaching and how new everything was and how things seems to be flying by at 200 mph. Now compared to year 7 of teaching, there are always going to be challenges, but I feel like a much stronger teacher than I was my first MONTH of teaching.

I haven’t even been coding for a year. I haven’t even been coding for 6 months! Just the thought of the potential for growth and experience a year from now really gets me excited about programming.

I got up from my chair and walked over to my instructor and asked if she could grade my exam today instead of over the weekend. She was happy to do that. I then asked if it wasn’t too much trouble, could she go over it with me and point out the things I could improve on this weekend. She seems to really like that idea. So much so, she asked everyone to stick around after the exam to go over it together.

I made a 7.95/10. Coding Dojo requires a minimum of 8/10 to pass. I’ll be taking it again on Tuesday of this next week.

Now on to the good news, I spent all this morning basically “taking” my exam from Friday again. I studied fixed the things that deducted from my overall score and made it completely functional. I sent it to my instructor to review and she was happy I was working on it this weekend. She told me the exam we took was really hard and that now I should have no trouble with the next exam because it’s slightly easier.

I am looking forward to taking the next one on Tuesday!

P.S. – Post exam, a big of group of students from the dojo invited everyone to meet at a mexican restaurant downtown for food and drinks.

mexico

I almost didn’t want to go because I wanted to come home and start working on redoing my exam but then I remembered: One of the most important things for me while I was teaching were the people I worked with. Having that connection with people you see almost on a daily basis makes a HUGE impact. It ended up being something I would look forward to each day and those co-workers ended up being my best friends.

best_friends

I decided to meet up with the group and it was a really good time! It’s cool when a group a people from all different backgrounds can come together with the same purpose; to learn programming.

Week 5 – Day 3 (Wednesday)

The past few days have been FAST and FURIOUS. Django has been a touch mountain to traverse but I feel like I’m about to see the summit. Today, I had a huge breakthrough. I officially deployed a website to the internet today. LIKE A REAL WEBSITE. WITH A REAL ADDRESS.

It was crazy y’all. Something I made was actually on the net for anyone to see. Anyway, just been wrapping up concepts and assignments this week before the belt this Friday. I am SUPER nervous about this belt. Instead of worrying, I’ve decided to make a strong push to the end of the Python stack. I’ve been averaging about 13-14 hours of coding each day this week.

Tomorrow is the belt review all day. I’ll update again on Friday after the Belt exam.

Week 4 – Day 6 (Saturday)

Wow.

It is CRAZY to think that it has almost been a whole month since joining the Dojo! I am essentially a little under one-third of the way through the entire program. Two weeks of Web Fundamentals and two weeks of Python sure makes the time here seem like it’s flying by.

time_flies

On Monday we will be joined by a new group coming to the Dojo for the first time. I am pretty excited about this. I have no idea if it’s going to be a small class like us or a huge one like the ones before us. Either way, it’s always fun meeting new people and sharing in the same experience. I feel like there’s a unique bond that is created when we all endure coding hardship together!

struggle

I find myself always being the one asking for help and maybe this will provide an opportunity to finally pay it back and offer up some help to the new guys. Kind of on a selfish note, I REALLY miss teaching! I am hoping this will satisfy my desire to help others understand coding and that you have to struggle a lot to get a little.

Something else on my mind is next Friday is our Python belt exam. It’s the culmination of everything we know so far put the test. A four hour test. While I typically feel like I am a good test taker, this one has me a little nervous. I think it’s because most of the test is going to involve creating a website using Django (which we just started yesterday) and deploying it (which I don’t know how to do yet). So far, I like Django, but I am hoping to take this next week to become more comfortable with it.

studytest

Last thing on my mind are algorithms. I feel like I should be better at these. Each morning is a little bit of a struggle. I’m going to revisit the algorithm platform Coding Dojo provides and possibly check out outside resources like HackerRank or CoderByte. I’ve heard that solving algorithms on a whiteboard is a HUGE part of the interview process.

P.S. Rockets play this Sunday in the first round of games against Minnesota in the playoffs. To sum up my feelings, see below:

 

Week 4 – Day 1 (Monday)

It’s the start of a new week! Actually, today’s Tuesday…I forgot to update last night 😐

However! After this past weekend, I feel energized, revitalized, and ready to go! We moved on to mySQL yesterday which is how we are going to be doing databases. I downloaded mySQL Workbench which is a GUI to help visualize how to structure your database. I like it because it’s got a visual aspect that’s a little different than coding. Here’s a picture of what a simple database can look like:

mySQL

This is pretty HUGE because now we have all of the parts to make a working website! We’ve learned the front-end/ client side with HTML, CSS, and Javascript. We’ve touched on Python and used it as a server-side language to set up our routes and run our web pages. Now we have the database that can store loads of info such as log-in or registration credentials, orders and shipments, user accounts. Pretty much anything that is data we can store and access later. Like I said, huge.

huge

That pretty much sums up yesterday. There weren’t a bunch of assignments. Most of it was just readings and exercises to understand SQL. I finished up the lesson around 2pm and spent the remainder of my time finishing up two previous assignments from Flask.

Sidenote: Post class today having a much needed Bros night! Really looking forward to that!

bros

End of Week 3 – Day 7 (Sunday)

Well, I haven’t updated in a few days. The Wednesday – Saturday were a BLUR. So much information was thrown at us this week. I am really struggling to retain it all. For the first time since the bootcamp started, I really questioned whether or not programming was really the path I wanted to pursue.

After learning the Python basics on Monday/Tuesday and Object Oriented Programming on Wednesday, we were introduced to Flask on Thursday needed to complete all assignments by Friday. Needless to say, I got behind in my assignments.

What is Flask? I’m glad you asked. Here it is directly from the Flask documentation:

Flask is a web framework. This means flask provides you with tools, libraries and technologies that allow you to build a web application. This web application can be some web pages, a blog, a wiki or go as big as a web-based calendar application or a commercial website.

Well, that’s great. Seems simple enough. Right?

flask

That’s Flask for me. Ugh…

The two windows on the right are HTML and CSS. Those languages I am familiar with and I know how to manipulate. The window on the far left is Python. No so familiar with. The challenge is getting Python to speak to HTML. This is where Flask comes in.

Long story short, I took most of Saturday to clear my mind and relax. I barely touched my laptop. In fact, my girlfriend and I went to go check out the Deep Ellum Arts Festival which was SO GOOD! I can’t tell you how much I miss music, art, creativity, and essentially the right side of my brain! It felt so good to walk around in that environment free of computers or coding  or technology. Heard some REALLY good musicians and saw some really beautiful art.

I really believe my soul craves balance. I DO like coding. I feel like I have the potential to be really good at despite recent setbacks. I like the challenge and I am capable of switching on my Type A persona and getting work done. At the same time, I need music. I need art. I need creativity in my life. Without it I feel hollow. Kinda emptied out. Almost robotic in a sense.

I realize this is just the beginning of my programming journey and right now I am “learning the foundations”. My hope is that in the future, I am able to combine the ability to program with my creative drive and compile some really cool projects.

Well, this post took an interesting turn. Didn’t really talk about much in terms of specifics. I’ll spare you guys this time! Tomorrow we begin a new subject: SQL (pronounce like sequel).

P.S. – Tonight was steak night. Cheers!

SteakNight