My current internship is a very colloravitabe and independent at the same time. There are days where I will be working alone for the entire day. Though there are certain days where I am constantly communicating with peers. Sometimes when working alone you encounter a problem -- in my case a bug in the code. There are a few stages to debugging the code and usually are not that fun. The first stage consists of trying to debug it yourself and just looking back in your code to see if you made any silly mistakes. Then the second step consists of going into the documentation for the thing that is broken, or the internet in general. The fourth step is by far the most challenging and is hard to draw the line on where to enter it. It is given that you debug your own code, that's just how it works. But there comes a point where it becomes reasonable to ask someone else the office to help debug your code. Deciding this moment is very hard because you don't want to ask for every little thing or everyone in the office would be very annoyed. But at the same time you still have to get work done and you don't want to have a simple big hold you up.
1 Comment
For my internship project I am developing the XYO Networks `Gamma` web application. It can be seen live anytime at http://gamma.xyo.network/. I think it speaks for itself rather than me trying to explain it. For this project I had to learn many things on the spot, for example React, a javascript library for building user interfaces(its what facebook uses). The concept was completely new to me. I always had my HTML and Javascript completely separate from each other but bringing them together in a clean way was a comely beautiful process where I was taught to think different about front end developing. I am constantly getting feedback on Gamma, from the blockchain community and other co-workers to make it the best it can be. Soon it will be open source meaning that anyone can contribute. This project gives me a lot of freedom, but with freedom comes a lot of responsibility. At the end of the day I have to provide a well working product that will be provided to the XYO Network Community.
Things have started to pick up at my internship. We are rounding up or ICO and are moving towards a more development focused phase along with our `gamma sale`. We will also be launching the Gamma Platform in the coming week which is what I have been working on for the past few weeks, or my “Internship project”. I have worked very closely with my mentor Scott in this project. Scott is the co-founder of the XYO Network and is the head of marketing thought in his words he does everything around the office. After college, Scott reached out to as many companies as possible. Of which he eventually got a tour of Twitter when it has about 30 employees. It was then when he realized he needed to teach himself how to code in order to succeed in world. He then taught himself how to code and combined that with his marketing skills to make a marketing bot called `Stewie` in the Virgin Islands.Being in a startup environment his main duties are to whatever is best for the company in that moment, so naturally he does a wide range a jobs but he focuses on everything marketing related. When asking him about that skills he looks for in employee he mentioned that the most important skill to have is to work as hard as possible. He says that being that the only way to become really good at something is to work your butt off, and teach yourself, no shortcuts. Organizational speaking you need to just fill in the gaps sometimes. I have yet to see one person have just one job at the company, everyone is constantly doing many things at once. At the same time not all tasks are clearly defined to just `do this` and `do this`. You are faced with a problem and must fix it but whatever means possible.
GPS is easily spoofable and is owned by the United States Government. GPS only became fully accessible to the world in the year 2000. At any point in time the United States government could flip a theoretically switch and leave us without GPS. The XYO Network is creating a decentralized geolocation oracle network which lets are smart contract call out to the real world. Currently the company is bringing on lots if new developers and some of the traits they are constantly looking for is how well they will fit into the office, their work ethic, and of course their skills. Previously to starting my internship here I thought that the only thing that mattered for a career was someone's work ethic and their skills -- but at the XYO network they are constantly looking for people who fill be a good culture fit. Surprisingly, there are a lot of connections between the working at the office and the things we do at High Tech High, many times I have found myself at a whiteboard with co-workers trying to figure something out, just how we solve things in math class. There is also lots of group collaboration and development which I explained in my previous post. But one thing High Tech High does not prepare you for is the idea of a consequence, for example if I was faced with a problem I had to solve it is my duty to solve it. There is no `I'll just half ass it`, it has to get done, where a homework assignment is just that. In terms of committing I take the coaster every day from Encinitas to downtown San Diego unless I will be working late. Then I will drive. Wow! What an experience this is. Every time I walk through the door I don't know what is going to come next. Everyday I am surprised by something new but the most surprising thing of all is how closely this experience relates to project work at our school. Every Time I heard the saying “you are going to use this in the real work” in class I rolled my eyes. But now I can confidently sas, as much as it hurts me to say it, that the teachers are right. I am constantly getting feedback from my co workers in the office. In fact, we can not push anything live of into the master peach without someone else approving our pull request! Its like not being able to turn in homework without someone looking it over and finding things to change.
What strikes me most about my colleagues is that they don't just do `their job`. Being in such a fast place workplace everyone has to do a little be of everything. Of course people focause around one task or topic but everyone is working on the same thing, making the XYO Network the best it can be. What also striked me at first is that there is no “leaving time”, its just do your job. I knew this was a thing in the real world but I have not experienced it. Many coworkers, including myself stay late into the night to finish something up. This attitude that people have towards their work drives me and at the same time the feeling of a good days progress/work in amazing. What amazes me about the job I am doing is how much I am learning as I am moving along. Whenever I run into a problem I will do exactly what we do in some of our classes (a common theme) try to work the problem ourselfs. Reach out to other coworkers, the seek for more help with the boss. There has also been many times where my mentor has given me problems to solve that he does not know the answer to or where I have a lot of freedom. This drives me the most because I am free to solve a problem in the means I please. Currently I am most excited about what I am building that will be released on the 21st. It is practically my baby. Id describe what the application is but it would be better for someone to see it in person when it goes live to get the full experience. Yet -- at the same time this is what I am worried about. Well I wouldn't say worried, I would say it is more like “I hope this doesn't break when it goes live” because my code has not been brodascated at this high of standard before. Though I am more than confident with what I have been working on and will stand behind it. I am taking on alot of responsibilty with this poroject and I hope it all goes well. The first day walking into the office I felt my heart pounding out of my chest, I felt more than confident and yet apprehensive at the same time. But most of all I was excited to be entering a real workplace. When I first saw the offices my eyes lit up, it was my dream workplace, it looked right of Silicon Valley. Computer monitors and whiteboards everywhere! What else more could I want? But I couldn't get distracted, I still had to get the job. The previous night I was re-learning everything I knew about blockchain, programming, and the XYO Network to put myself in tip-top shape. As soon as we moved into the conference room to start the interview all my nerves were suddenly gone. Towards the end of the interview Scott Scheper (my boss) asked me when I wanted to start. I was overloaded with joy and said as soon as possible. Turns out I ended up working that night.
For the past few months I have been interning at XYO Network. The XYO Network is bringing blockchain to the real world by creating a location verifying oracle network. There are about 20 people within the offices in downtown San Diego. When I first walk into work, I open up my laptop and start off where I left the day before. For the past few months I have have been building their web application, “Gamma”. This process consists of writing code and designing the app all day long. I am constantly getting feedback on how to make it the best it can be. My main partners while working are Scott Scheper and Arie Trouw, the co-founders of the XYO Network. In terms of the tech world's general business policies I have always felt they were held to the highest of standards… well except for Google where you can take a nap anytime you want. I expected the stranders to be held to the highest degree when I first walked into the building for my interview, I wore my best clothes, neck down. But my view soon changed, I feel like the company is structured around one premise: “Do your job well, do it right, and do it with a positive attitude”. So who cares if you wear a t-shirt or not? As long as the job gets done well, they could care less about your absence or tardiness, though possible to do your work remotely it is not only crucial but very helpful to be within the office. First off, it is much easier to debug code when you have a second eye looking at it. Second, it is more efficient to communicate when other co-workers or present, this is helpful because I can provide the exact status of what I am currently working on. It is also something that is fairly new to me, previously while developing things on my own I was always on my own schedule and held to my own standard. So far, my biggest takeaway from this experience is doing my work to the highest standard possible. Previously to interning at XYO Network, my code was more than just sloppy, it barely even functioned. Looking back at all the code I have written in the past few years makes me cringe. I have also never worked with a development team before, all the code most work together, and for that to happen it has to be written well. While interning I am constantly learning from others, weather its debugging a problem or even reading over others code. Every time I walk out the door, I feel I know more information than when I came through. “Choose a job you love, and you will never have to work a day in your life.” Is quite possibly the biggest cliche ever, and I can conclude it is complete bullshit. Yes, I look forward to my internship every single day with a smile on my face, and Yes, a majority of time time I love woking more than anything else. But the remainder of that time is spent banging my head up against a wall trying to figure out why my code isn't building properly- but once that problem is overcome, you get the best feeling in the world. |