How can we find the poisoned one within 1000 bottles of wine using only 10 prisoners as taste testers? When I was in high school, I came across this problem A King, 1000 Bottles of Wine, 10 Prisoners and a Drop of Poison. For a long time, if I felt puzzled about something, I would force myself to spend tremendous time until I could understand it fully because I liked the feeling of a comprehensive understanding. But this was not an easy problem for a high school student. I tried to use the bisection method but found it cost too much time. Although I tried lots of ways and struggled to find out the solution, the fact is that if you didn't know Binary, you were unlikely to solve this problem. To understand the solution to this problem, I learned the binary system and had a preliminary understanding of computer science. Through the process of learning and comprehending, I was surprised by the magic of binary and curious about what we could do with the help of computer science. As a result, I decided to continue learning computer science in college as my major. Being good at math also laid a hard foundation for my future study in computer science..1point3acres
During my first class of Advanced Language Programming in college, the professor introduced basic conceptions of C and told us what we could do by using it. At that time, I was inspired by his introduction and eager to make some experiments instantly. Then, I installed my first compiler of C and made tremendous tries following the book in a short time. I was fascinated with programming and developed programming skills greatly. After that, I took part in the ACM Training Group of our university. I almost spent all my leisure time in the laboratory learning useful date structures, amazing algorithms, debugging skills and programming skills. One challenge I ever faced was to meet the needs of time limitations. To improve program efficiency, I read the book Introduction to algorithms and learned how to judge time complexity. And by studying examples of code optimization, I learned important lessons of using data structures such as Priority Queues, Hash Dict, Binary Search Tree and so on. From then on, I could use many ways to improve program efficiency in different situations. This experience also greatly enhanced my understanding of what I had learned in courses. Additionally, it equipped me with the ability to implement ideas with programming quickly and helped me find a good job after graduation.
After I graduated from school, I was admitted by Bytedance as a software engineer, responsible for sever development and optimization. It was really different to write code at work, as you need to consider more things, and in most cases, you don't need to use complex algorithms or data structures you had learned in college. My first service redesign project was a big challenge for me because I had no prior experience in service design. I searched related information with Google and learned design criterions of server service. From a similar project in a shared blog, I found the ZSET structure in Redis suitable for our product demand of user favorite list. Instructed by this blog, I wrote a detailed design document and discussed the overall plan with my mentor. After several days of hard work, I finally developed the new service well and improved processing speed 3 times before. Another challenge that I still remember today was to design a User Info Service which needed to handle above 1 million queries per second. It was hard to meet this demand because everything would become different when you were facing large traffic. To solve this problem, I analyzed the storage format of user data and spent one-week investigating general ways to improve concurrency. From the collected information, I learned about the limitation of Python that it couldn't really supply concurrency and decided to use Go to construct new service. Also, by analyzing the storage format, I believed that I could store data in key-value format with Redis which was the fastest storage. Moreover, I learned to reduce server pressure with the Asynchronous Processing Mechanism by using a Message Queue. Based on all the efforts above, I finally completed the construction of this service and provided the ability to handle 2 million queries per second. As I encountered many challenges in projects, I realized the importance of keeping learning the latest knowledge and practical tools. I have been tasked to optimize many services, and in most cases, I could make a big plan to improve the service in many aspects. However, it was not always like that. As I have worked for several years, I have to face a fact that with basic knowledge of computer science, it is not enough for me to handle some really difficult situations and Google can't help me solve every problem. Holding this idea, I think I should make some changes.
Information from Google or other sources is always diverse and scattered. But university courses are concentrated and effective. By spending one or two years studying in college, I hope that I can gain systematic knowledge of computer science and have a better understanding of infrastructures. It is beneficial for my future career. In the future, with a better understanding of computer science, I hope to acquire a software engineer position in big companies like Google or Microsoft, focusing on backend service and developing impactful software for people worldwide.
One of the great reasons why I determine to further my study at The University of Texas at Austin is its friendly curriculum. I am especially interested in the course Computer Network because it can improve my understanding of Network which is often very confusing for me. Additionally, being able to have an internship in summer offers me more opportunities to gain a good job in the future. It is also very convenient to have onsite interviews in Texas. Considering my major, CS, and my experience as a software engineer, I am confident that CS is the most suitable program for me. It is my heartfelt desire that I may continue studying in this program and become an outstanding software engineer after graduation.
as you need to consider more things, and in most cases, you don't need to use complex algorithms or data structures you had learned in college
其实挺希望看到具体的need to consider more things 有哪些
第三段的那两个经历很好,有写到挑战是什么,你又是怎么克服的,以及最后的成果。
这样对比,我觉得你第二段大学的经历部分,可以写得更好一点,或者选一个更有说服力,具体的经历。第二段篇幅挺长,但是我得到的有用信息很少。
4 & 5. 选校理由还有动机:
我其实不太了解美国的研究生申请, 我之前是申请的加拿大,加拿大是分master of science 和 master of engineering。 如果要是申请master of engineering 像你那样写就没问题,因为你是想要学习industry engineering,毕业后是要进入industry发光发热的。但是要是申请master of science, 都是要跟着导师做研究做项目的,你需要清楚地表达出你具体多cs的哪个方向感兴趣。美国的研究生申请不知道是不是也这样分,这个还是得楼主自己多了解一下。