here is my first draft for my SOP written for UK universities,
please let me know what you think,
how can I improve it?
A couple of days after my 13th birthday, I used a personal computer for the first time. I was really impressed with all those games I could play in that 14 inches color monitor and curious about how this machine worked. I was instantly hooked and played every game I could get my hands on. During that time, my father gave me a book about Basic, a programming language, so I started writing my first pieces of code displaying a couple of green lines on my monitor at specific coordinates I chose. Experimenting a little bit more, I could write code that displayed basic shapes or use loops to draw many lines. I knew that's what I wanted to do for the rest of my life!
During my high school days I was keen on learning more about computers and programming, I attended a Vocational High School that emphasized on Computer Science studies. I learned a lot about how computers operate and how to develop and design efficient programs with Cobol, Pascal and pseudo code.
I decided to pursue a Bachelor of Science in United Kingdom to further my studies in Computer Science. I first attended <University Name>, and then chose to go to <University Name> that offered a more up to date curriculum. I started learning about core Computer Science subjects such as Object Oriented Programming, UML, Java, Databases, Distributed Systems, Network Operating Systems, Game Programming, Web development, Internet Security and Multimedia Systems.
For the past seven years, I have worked as a software engineer in small local companies and big multinational companies as part of a team. I was employed at <Company> as a software engineer in a team. Our main task was to develop the UI part of <Company's> <Project1> and <Project2> using Adobe's Flex platform. Being a member of a multinational team collaborating with another team responsible for the server side development, really improved my time management and estimation skills. Also, I improved my analytical and problem solving skills. The CTO in our company was amazed by how fast I could close difficult and tricky bugs that had arisen during the QA process. I provided guidance to team members with not much experience, and was considered as a mentor to the less experienced programmers. My programming skills greatly improved and learned a lot about Design Patterns, Software Architecture Design, Continuous Integration and how to manage code and started to understand the intricacies of managing a large software project.
Furthermore, I have been a teacher in a Vocational Training Institute for five years. I taught a number of Computer Science courses for post-secondary students. I learned how to effectively communicate to students with no or little former computing science experience. The way I used was to break complex stuff into small manageable chunks that students can comprehend and practically use. We needed to be pragmatic with our teachings, because the students would enter the job market after graduating from us, so we trained them to actually do certain things and do them well. Many students were fond of my teachings and how it helped them in their quest for a job in I.T.
Another thing that shows my dedication and passion for Computer Science is that in order to gain correspondence and equivalence to a Greek 4 year Bachelor, I had to successfully pass six core computing science modules. Thereafter, I was accepted from <University name> as a student for these modules. I have successfully passed all the required modules and further improved my core knowledge of Computer Science. Thus, <University Name> has awarded me with a correspondence and equivalence Bachelor to Greek universities. During that time I had to both work full time as a software engineer and as a teacher part-time, so I didn't have the required time to pass all the six modules in a short time. This improved my time management skills, as I had to use my time wisely.
Currently, I am working at <company> as a senior software engineer and a team lead. I lead a team of programmers from all over the world. My job at <company> entails data integration of cloud computing API's such as Salesforce, Constant Contact and Pervasive Software. I further improve my communication and management skills, and utilize latest software paradigms and techniques in our projects such as Test Driven Development and code reviews to ensure the quality of our products.
I am a motivated and enthusiastic professional who gets the job done. I also have a proven record of successfully completed projects under my belt. My aim for the MSc in Computer Science is to learn about the latest research and practices in computer science and specifically in software engineering. This course offers a good mixture of core subjects alongside an interesting range of optional units that could deepen my knowledge. I believe that having pragmatic practices and technical expertise alongside theoretical knowledge is the best combination in succeeding in business and academia.
In summary the MSc at <University Name> will provide me with a broad background of knowledge that will help me to advance my career as a Software Engineer or entering a PhD program in this field. I am confident of my technical, theoretical and interpersonal abilities and would appreciate the opportunity to be considered for the MS program in your highly esteemed University.