Tuesday 3 May 2016

CV



Areas of Interest :

1. Computer Networks
2. Database Management Systems
3. Embedded Systems
4. Mobile Applications
5. Ubiquitous Computing



Things I accomplished at age of 15 :

1. I have built two websites using HTML, CSS and JavaScript.
2. A  game (snake and its food)

Two websites :

1. Details of the class mates with all the subject teachers . There Name, father's name, mother's name, bus number, gender, phone numbers, address, etc

2. Website to rent a house, there were many colleges near my locality so I found a mechanism by which I could help the freshers find accommodation easily. 

Game :

It was a snake and its hunt for food game. Built using Javascript, html and Css.
The snake's motion is governed by the up, down, left, right arrows in the keyboard.
A boundary wall is provided (60X60)
If the snake touches the boundary, the user loses his game
If the snake reaches its food, its length increases by 1 unit.
I explored the event handeling of JavaScript


College 1st year: re-selling used books online website :

This provided the users (teachers and students) with a mechanism to sell their books.
First the user has to create an account.
He can then add the books (that he wants to sell) to the database.
Book's database includes : Book Name, Author's name, Edition number.
His phone number, email address is shared with the other users who are interested in buying that book.

College 3rd year : Embedded systems . Projects like :

1. Room temperature Monitoring system using raspberry pi, python, MYSQL, Web based APIs

Objective :- 

To read temperature data from Raspberry pi and send notification via an email to concerned people.

Arrangement :-

A temperature sensor is attached to a raspberry pi . It takes readings of temperature. Python code converts these readings into Celcius value. It then checks if the temperature value is greater than a certain value or not. If its greater then an SMS or Email is sent.


Python’s smtplib module simplifies them into a few functions
// For sending the email 
import smtplib
server = smtplib.SMTP('smtp.gmail.com',587) //The SMTP object represents a connection to an SMTP mail server and has methods for sending emails.
server.ehlo() // a hello message
server.starttls() //If you are connecting to port 587 on the SMTP server (that is, you’re using TLS encryption), you’ll need to call the starttls() method next. This required step enables encryption for your connection. 
server.login('neha@gmail.com','mypassword') //Login to the email account to send mail - check gmail account settings if authetication failsserver.sendmail(' my_email_address@gmail.com ', ' recipient@example.com ', 'Subject: So long.\nDear Alice, so long and thanks for all the fish. Sincerely, Bob') {} //Sending mail 

server.quit() // close connection from smtp server



2. “Automatic Speed Control of DC Motor” using Temperature Sensor and Arduino UNO that regulated the fan speed
Objective :-

Our Automatic Fan Speed Controller is aimed at automating the speed of the fan according to the room temperature.

There will be specific fan speed value set for a certain range of temperature. Temperature extreme
values are fixed based on the requirements to which fan speed is mapped. for example if the temperature extremes are -50 degree celcius (minTemp) to +70  degree celcius (maxTemp) . Now if the temperature say 't' lies between 20 to 50 degree celcius, then there will be a particular value of temperature.

This module comprises of two parts:

• Temperature parser and

• Passing data to fan controller.

The data received from LM35 temperature sensor needs to be converted to recognized temperature reading formats like Celsius, Fahrenheit etc. before the data starts making sense. For conversion of temperature to Celsius, a factor of 0.48828125 needs to multiplied to the received value. The received temperature must be within the specified minTemp – maxTemp range. If the temperature is outside
the range, the fan will be stopped. However, if the temperature is within the allowed range, then instructions with temperature and fan speed as parameters are sent to the fan controller. The temperature reading is updated in real time on the LCD screen for user reference.

Hardware Requirements :
1. Micro-controller (Arduino)
Arduino MegaATmega128016 MHz
2. DC fan
3. 12V dc battery
4. LM-35 Temperature Sensor
5. Bread Board
6. Jumper Wires
7. Transistors & Diodes
8. Resistors & Capacitors

9. LED & Buzzer

Arduino IDE as the software requirement.


College final year projct :

This is an android application project where a patient can communicate easily with a doctor.
It is designed for emergency cases like when a patient is unable to reach the doctor in time, may be due to huge traffic or at night when the patient is unable to find an ambulance or any transport medium.
It helps a patient to get instant solutions

This application is for two types of end users patient and doctor.

Patient module :

A user who is a patient will make an account in this application.
He will then log in to his account, with the email id and password he has registered with.
He will be provided with two activity pages or screens :

1. Home Screen where he can view all the available doctors .
2. Edit screen, where the patient can  edit his personal details like email id, phone number, etc and can add call points to his wallet

Making a Call :

In the home screen page, the patient will view the list of available doctors with their specializations and once a patient selects a doctor, he will press the call button. As he presses a call button, a request to our server which then sends a request to Plyvio server. This provides a conference call between the doctor and the patient. Plyvio initiates a conference call, it first sends a call to the patient and once he lifts up the call, doctor is sent a call . Now once  the doctor lifts up the call, a conference is generated and they converse over the phone.

Call Points :

Now, there is no Telecommunication fee, since the Plyvio server sends calls to both the doctor and the patient.
Both the doctor and patient maintains online wallets. This wallet contains call points.
When a patient wants treatment from the doctor, he must have some call points.
A patient can recharge his wallet by making a bank transaction.


Transaction :

The patient presses the button "Add call Points" and is prompted to fill his credit card details like Card number, password, its expiry date, etc. Using Stripe APIs, we are deducting amount from the patient's credit card and equivalent points are added to the patient's wallet. eg: if a patient adds 100 Rs, then he gets 100 call points.



Now if a doctor wants to transfer the money he earned to the bank, he can press the button "Transfer to Bank ", this again uses Stripe APIs and asks the doctor to enter his credit card details, after adding and confirming the transaction, the money is transferred to his bank account.

( The patient will transfer money from his bank account to my stripe account. Now when the doctor wants to transfer his money to his bank, I deduct money from my stripe account and transfers to the doctor's bank account. Now, monthly I can transfer money from my stripe account to my bank account, so that I too gain profit.)

Software used :

1. Ionic Frame work 
2. Sales Js
3. Plyvio
4. Stripe
5. MySQL
6. Mailgun


Ionic Frame work 

This is a platform for building hybrid applications using HTML, CSS, javaScript for android mobile applications. 
It is managing the front end of the android application.
It uses CORDOVA API and Angular JS (which is a javascript framework for front end)
It uses MVC architecture (Model View Controller)


Sales JS

Back end of the android mobile application is handled by Sales JS
This is a Node JS Framework
It uses MVC architecture (Model View Controller)
It is written in JavaScript
It handles the login, call, transaction, etc
If asked (runs on the server ie on Digital Ocean)


Stripe 

Its a third party service that handles the payment gateway. 
Deducts money from the bank, when provided with the credit card details and can also transfer money to the bank.


Plivo

This provides VoIP services.
Supports call conferencing.
We use this to bridge call between the doctor and the paitent.
First the call goes to the patient and once he responds only then a call is sent to the doctor.


Winning :

1. Catapult designing event at 1st year college 
2. Best Firefox OS  mobile application in Aaruush


Internships :


1. CDAC in summer June 2014 - LAN networks in organisation
Internship on Monitoring and Configuring a LAN
network. Acquired knowledge in setting up LAN, Server Load Balancing and
managing it in an organisation

2. IIITD&M in summer June 2015 - SDN and Server Load Balancing

Internship on Open Flow
Networks. Gained knowledge in Fault Tolerant Reconfigurable Architectures,
Mininets and POX Controllers


Projects:

- "Grammatical Lexical Analyzer"
that parses the query entered by the user
to lookup the search engine index for proper results, built using Python to query , ranking : term frequency (relevant url 1st priorit, titl is 2nd priority  n ) n itf. 

when the user enters a string in search engine, it may consist of irrelevant characters, words, etc like "and", "to" "how" ?

So, this project basically extracts the useful words from the string "How to Fly a plane" that is "Fly" and "plane"
Makes all possible combinations with these words like fly plane, plane fly, etc.
This is done by a python script running on the server. We maintain a database of many websites in the internet. say a million of websites. 
Php file now sends data from this python script to the query the database. The data base returns all the values from it and returns to Php file. 

Ranking of the websites : 

Now based on priority, like which website will be displayed first, is decided on the basis of TF(Term Frequency). If the combinantion ("fly","plane") of words occur in the URL, then its priority is 1
if it occurs in the Title, then its given priority 2 else if they occur in the content, then priority 3 is given.


- "Sender Centric E-mail System" 
that allows sender to edit the e-mail body and included attachments, even after the e-mail has been delivered to the receiver, built using PHP, AngularJS, Bootstrap CSS, REST API 

There are two types of mails : Text with attachment and text without attachment .
In both the cases, the entire content of the mail is sent. Now, 

1. The receiver of this email may forward it to different users.
2. A wrong email might be sent to a person who is not 
3. Wrong content might be sent to the receivers.

Hence, in all the above cases, we provide the following solution :

1. The sender and receiver will have a custom built chrome extension (written in JavaScript).
2. This chrome extension will create a unique ID or modifier for each mail sent. 
3. When the sender clicks "send" button, then the entire content of the email is uploaded to the server
    and simultaneously a modifier is generated specific to that email.
4. Now, this modifier is sent to the receiver. 
5. When he opens the mail, the chrome extension fetches the content of that particular email from the server by making an AJAX call and displays it to the user.
6. Now even if the sender wants to modify a sent email, he can ????

Also, yaha PHP kha aayi ?


- "Email to SMS gateway"

it is a system to receive important Email Notifications as SMS, with whitelist and filters, built using DJango (Python), MySQL, AngularJS, MaterialUI

In many cases, some important emails might remain unnoticed by the users, hence, this system provides solution to this problem.

1. All the emails in a user's inbox are forwarded to a python script.
2. The forwarded email address is converted into this format : number,password_for_way2sms_account@smsmafia.in.
3. the python script then extracts data (number and password) from this address.
4. Frames a message with Subject of the email and sends to the number.


- "Voice Assistant System" 

which performs different operations on the
computer based on Voice commands, built using C#, .NET 3.0

There is a speech recognition engine in the C# visual studio.
We create an instance of this engine and pass the list of commands in a key value pair like :
"one","you pressed one"
"notepad","notepad.exe"
"paint","paint.exe"

imput is gievn via a microphone


- "Test Management System" 

that provides a platform to facilitate examination system for a  university, built using C#, .NET3.0, SQL over MS Access Database
This project a platform where students can take tests and get their results instantly.
It has student portal and a teacher portal
Functions that a teacher can perform :
1. Add student
2. Create question paper (include questions and answers)

Functions that a student can perform:
1. Take test
2. View answers


Research Publications :

- Published paper, "Microcontroller-based Smart Irrigation System",
Discovery Journal (ISSN 2278 ¿ 5469), EISSN 2278 ¿ 5450, Volume 44,
Issue 203, October 18, 2015
- Published paper, "Automated Irrigation System with Pump Health Detection",
International Journal of Advanced Technology in Engineering and Science
(ISSN 2348-7550), Volume 3, April 2015
- Published paper, "An Automatic Fan Speed Controller Leveraging Internet of
Things", International Journal of Research in Engineering & Advanced
Technology, Volume 3, Issue 4, September 2015
- Presented paper, "An Email System with Access Control and Content Recall",
33rd International Conference on Computer Science and Information

Technology, 4th October 2015


Special Skills and Interests:

Languages: English - proficient, German - elementary, Hindi - proficient

Computer skills: Netbeans, Visual Studio, Android Studio, Adobe Photoshop

Platforms worked on: Linux Operating System(Ubuntu, BOSS Linux, Redhat), Windows XP, 7, 8, 10

Programming Languages: Java, Python, C/C++, C#, SQL, PHP, HTML, CSS, JavaScript


Online Courses:


- An Introduction to Interactive Programming in Python (Coursera)
- Introduction to Computing with Java (EdX - HKUSTx - COMP 102x)
- Big Data and Social Physics (EdX ¿ MITx - MAS.S69x)
- Networks Illustrated: Principles without Calculus (Coursera)
- Introduction to Linux (LinuxFoundationX -LFS101x)


Extra Curricular Activities:

- Active member, Embedded Systems Club, SRM University, 2015
- Co-ordinator, "Oratio" event, Furor 2.0, IT-Association, SRM University,
  2014
- Social Media Lead, Google SRM Club, SRM University, 2013
- Co-ordinator, "Paper Presentation" event in National Technical Fest at SRM
  University , 2013
- Co-ordinator, "The Informals" event in National Cultural Fest at SRM
  University , 2013
- Committee Head of Public Relations, IT Association, SRM University


Hobbies:

- Sports: Badminton, Basketball, Volleyball
- Others: Classical Dance, Writing, Cooking, Yoga Practice