My name is Mohammad Sharif and I am a student studying computer science and minoring in mathematics at San Jose State University. I fell in love with technology at an extremely young age when my dad's friend had given us his used computer. I
was around six or seven years old at the time, but this device fascinated me. The earliest memory I have of using a computer was that I clicked the mouse on something that I shouldn't have clicked it on and the system beeped.
My knowledge of computers was gained through trial and error throughout my life. During my sophomore year of high school I decided I would pursue a career in technology. After further research about the differences between computer engineering, software engineering, and computer science, I set my sights on the field of computer science. I've loved the experience ever since.
I am currently a fourth year student hoping to graduate in 2018 with a BS in Computer Science and a minor in Mathematics.About SJSU
I originally learned Java, away from the classroom I've been learning Swift, Python, C, as well as HTML/CSSView Github
Received the Dean's Honor Roll award at SJSU as well as Won the Best use of the NEC API Prize at Cal Hacks 2016.View Awards
I am experienced with using Git, Bash, Agile methodologies, Slack, and Photoshop. I prefer the Mac OS, but am also familiar with Windows.View Skills
At Proofpoint I worked on the Tools Engineering team and built applications using new technologies such as React and Redux. I worked on updating legacy UIs written in older frameworks such as ExtJS to React. I also created a standardized component library to provide better programmer efficiency for future UI development as well as a coherent look amongst all tools. When I first began working at Proofpoint I had done little to no web development work, but during my time at the company I was able quickly learn the skills necessary to contribute to moving the company forward.
Java was the language I was first introduced to through the computer science program at San Jose State University and it is the first programming language I ever learned. I have a solid foundation in the language and all the courses I have taken so far are based around this language.
I have recently begun learning how to code iOS applications using the Swift programming language. I had always wanted to develop for iOS and considering Swift is a fairly new language I felt as though starting now could pay off further along the line when Swift knowledge is in greater demand.
Python is a language that I've begun learning with the help of online resources and documentation. To get a feel for the language's syntax I have built a game of Connect Four that runs in the console as I have yet to learn GUI programming with Python. I am looking to learn about the Django framework soon.
I began to teach myself the basics of HTML back in December of 2015 and found it to be an enjoyable experience. Although I'm not an expert web developer, with a decent understanding of HTML and the use of a Bootstrap template I was able to design this personal site that you're currently on.
I learned CSS while I was learning HTML and have a basic understanding of how to style a website. Like HTML I am not an expert in CSS, but I did find that creating this website helped me expand my knowledge of both. I look to gain even more experience developing websites as the year goes on.
Programming has a lot of history in how the languages have developed over time. To satisfy my curiosity I've begun learning the C programming language which is what many languages today are based off of. I feel as though it will help me appreciate some of the capabilities modern languages have and learn more about the history of programming.
This was the first mobile app I created. It was an android application that I made with two of my friends for LA hacks 2015. The purpose of this app was to help people at hackathons find teammates based off programming knowledge. We used the Moxtra API to allow in app messaging between users. Users could join chat rooms for iOS development, Android development, Web development, or Design and talk to one another for help or finding a team.
This was an assignment for my object oriented design class. I worked on implementing the GUI with the use of java's swing library. I began this project with no knowledge of swing, but by the end of the project I found myself to have a much better grasp of it. It was the first computer application I wrote that had a GUI.
This is a website that I created for my History 15A class. We had to pick a piece of technology that we believe had a big impact on the country, so I decided to analyze the positive impacts of the iPhone. I began with a bootstrap template and then took it apart to style the overall website the way I wanted. It was a good way of incorporating web development into a class other than those geared towards programming.
This was a program that I created for my final project in my object oriented design class. This project was meant to essentially sum up all material covered by the course over the semester. I used Java's swing library to implement the GUI, made use of the MVC architectural pattern to separate data storage and computation from the interface, used listeners to update the view as objects were moved around while also modifying backend data, as well as using multiple design patterns in the process.
This was an android application that I created along with a team of four for Cal Hacks 2016. Our application won the best use of NEC's API prize, which was an API that we used for image recognition, making user profile images scannable essentially similar to a QR code. For this project I had implemented a Facebook login and authentication system through the use of Firebase. In addition to that I helped create various pieces of the interface and integrate technologies such as the NEC API and Twitter's login API.
Momentum was a semester long research project carried out by Justin Ng, Jorge Gallegos, and myself. The purpose of the project was to create a more efficient and simple way for students to interact with advertisements on campus as well as give content providers feedback on how well their advertisements were working. Our mobile app had made use of the ZXing API which allowed us to have a built in QR Scanner in our Android application. When a QR code was to be scanned the in app ad feed would be populated and general user data would be sent to a MySQL database hosted on Amazon Web Services. With the use of IBM Watson Analytics we were able to create graphs and charts to display on the web platform for content providers.
This was an Android application powered by the Google Cloud Platform which would translate text captured by the phone's camera. Our project won the Best Use of Rapid API as well as placed 3rd for Most Technically Challenging Hack judged by Google! With the use of Optical Character Recognition by the Cloud Vision API we were able to pull text. We could use text to speech to have the device read the text. With the use of the Google Translate API we could then translate into numerous languages as well as have the device speak the translated text.
Motivate Me is an Alexa skill that I have been developing as a means to familiarize myself with developing for the Amazon Echo as well as familiarize myself with some of what Amazon Web Services has to offer. The application is built using Node.js and connecting to a DynamoDB database. The skill presents users with a random motivational quote from the database upon request. The skill is nearing the end of development and I hope to publish it within the next few weeks.
This was an Android mobile application built at Hack Merced 2017. The purpose of the app is to allow users to upload a clip of themselves performing a certain exercise and a community of users can look to see if they are executing it with proper form. This application could help prevent injury caused due to bad form. The application was built using Firebase for authentication, allowing users to log in with Facebook, Google, or an email and password. All data was stored in Firebase as JSON and dynamically populated the feed.