"There are merits to breadth and depth. Explore! Take opportunities to try cross-disciplines when you can, especially if you are not sure what you want to do. Sometimes, one cool thing can lead you to another adjacent field with some other even cooler thing that better suits you."
Hear Tyler give his advice for those interested in pursuing engineering and/or computer science!
Cheaply built robotic arm with 3D-printed hand possessing full articulation driven by an Arduino Nano and Python program that can detect human hand/arm motion using an advanced sensor and replicate it.
My career roadmap has been somewhat defined.
I joined the FIRST robotics team in high school because I knew I liked STEM, so I figured this was a good way to get exposure. This is where I
discovered I wanted to study Computer Science in college after realizing EECS was the core of the robot.
During the spring semester of my senior year at AOC, I had some extra classes I could take,
so I took Circuits with Professor Martinez (who is awesome) to prepare for a college career in STEM. It kicked my butt, but I knew it was a step in the right direction.
During my first semester, I dove in to a CS class (6.01) right away because I knew I was behind a lot of my peers since I had zero coding experience. I also wanted to make sure I liked the field, which of course, I did even though I almost failed.
During sophomore Fall, I took a class called Computation Structures
(6.004 in MIT speak) where I got my first exposure to Operating Systems and computer architecture. It ignited a spark of curiosity in me that I knew I needed to explore further. Plus, I was crushing this and sucking at algorithmic proofs.
During junior Fall, I took two advanced classes in system optimization (6.172) and GUI development (6.170) because those were my two favorite sub-fields of CS, and I needed to decide which one to focus on. Both classes were
integral in my development as a programmer and difficult in their own ways.
During January (IAP at MIT), I picked up a research position in the
Media Lab where I designed UIs for child education apps. I figured this would help me gain practical experience in Front-End Development and further help me make my decision. It really just made it harder, in a good way.
During junior Spring, I fell in love with a graduate class I took on computer architecture (6.823). I knew this was it. I decided to focus the rest of my time gaining as much experience in systems and low-level computing as I could, although still exploring other things on the side.
During job-hunting season in senior Fall, I noticed how my niche knowledge of Operating Systems was much more greatly appreciated than my GUI design experience. Plus, a lot of the jobs just seemed cooler in that field. Eventually, I accepted a job with Apple on their OS team.
Here are my extracurriculars relevant to this pathway
DURING MY HIGH SCHOOL CAREER
FIRST Robotics Project 691
Circuits class w/ Professor Martinez
DURING MY COLLEGE CAREER
Internship at JPL; Really fun and an interesting look into the government side of engineering careers.
Internship at Boeing; Received a Security Clearance which can be very valuable in the field and expensive to get if not sponsored.
Internship at Spell Inc.; Got my first look at a start-up. Really cool work culture and tight-knit community. Excellent opportunity for growth.
Media Lab Research Position; Got to publish a paper for the ACM!
HackMIT; Hackathons/make-athons are an excellent way to hone your skills, network, build something fun on the sponsors’ dime, and possibly travel!
What I'm currently doing/hope to do
After graduating from MIT in 2020, I will now be starting work at Apple in Cupertino for their OS
team. Unfortunately, since I have not started yet, I cannot provide a lot of insight into the
position or the field. I am very excited to start working there. I know I will gain a lot of experience
and learn a lot by being able to work with the people who built something the whole world uses.
In the meantime, I am taking the time to pursue side projects and explore other fields of
programming like learning new languages, embedded systems, and video-game development. I
am sure I will continue my personal projects even once my career begins, and hopefully,
somethings comes of them one day! Although I do not plan to pursue a graduate degree at this
time, it is always a possibility. Graduate programs are way cooler than undergraduate, in my
opinion, and if I came across a good opportunity, I would probably take it.
How to maximize my time in high school?
Advice #1: If you have the time and interest, get started on learning some code. Start with a forgiving language like Python and try out some basic tutorials. HackerRank and similar sites are great. Company recruiters basically take their questions straight from there! If you really want to impress, make a GitHub account and find a couple interesting, challenging projects to put on there. Looks great on college apps and internship resumes.
Advice #2: If advice #1 does not suit you, no sweat. I went in to college with ZERO coding experience. I think being well-rounded and showing how dedicated and passionate you are about the things you do is more important. I stood out not because of one amazing thing but by being solid in so many categories that it impressed recruiters (I am only speculating though). I was a scholar, athlete, leader, volunteer, etc., and I put a lot of time and effort into everything I did. When I could run for a leadership position in something I cared about, I fought for it. However, not everyone can be the leader. There are other ways to show you are a good candidate for college. I think they want to see a thirst for learning and the effort to back it up more than they want to see that you already know everything.
Advice #3: There are merits to breadth and depth. Explore! Take opportunities to try cross-disciplines when you can, especially if you are not sure what you want to do. Sometimes, one cool thing can lead you to another adjacent field with some other even cooler thing that better suits you. Most disciplines bleed over a lot nowadays, especially with computer science. Almost everyone in college learns coding one way or another. People with depth may have a stronger resume in one field, but people with breadth have more potential opportunities. Oftentimes, recruiters just want to see that you have critical thinking skills, enthusiasm, and other important general skills. You can learn on the job.
Advice #4: First impressions matter. Your first impression starts when you get out of your car, not when you’re called into the interview room. You never know who sees you, who you’re talking to, and who is paying attention. You want to stand out from the very first second you can, and you want to continue to stand out until you have exhausted every last way to do so, but that doesn’t mean kiss up to them or beg for attention. Be polite, be professional, be enthusiastic, and try your best to be natural. Everyone will be more at ease that way, including yourself. Remind them of your name by sending a thank you email or by asking follow-up questions when appropriate.
Advice #5: Impostor Syndrome is very real, and it is okay to feel it. I felt it on and off all four years of college. You may feel it even now in high school, or you may have never heard of it. Either way, it’s important to recognize it and know what it is. The reality is that everyone feels it at least once. That comes with the territory of pushing yourself to achieve and competing with other smart people. Everyone has things they are good and bad at. Absolutely no one is good at everything even though sometimes there is that one person that seems perfect. Don’t let this feeling stop you from asking for things, applying for things, competing against others, or anything else. The worse that can happen is that you learn from your failure and you show those professors or recruiters or judges or whoever that you are hungry. You showed them that you want it, and they will definitely take notice.