Arihant Sethia

Software Development Engineer
Amazon India Development Center, Bangalore

Experience

Amazon

Software Development Engineer / Bangalore, IN July'15 - Current

  • Part of Identity Services Team at Amazon.
  • Currently working on developing a mechanism for services owned by Identity Services to protect itself from misbehaving clients.

Amazon

Summer Intern / Hyderabad, IN May'14 - July'14

  • Developed a new approval based multi-factor authentication to provide a more secure and user friendly experience than the current OTP based multi-factor authentication provided by Amazon for its customers.
  • Developed an online portal for managers to track progress of projects as well as availability of developers in Identity Services Team

HackerRankX

Summer Intern / Bengaluru, IN May'13 - July'13

  • Built a cross-platform application for candidates to take test on InterviewStreet without being able to copy or use external resources for help during the test.
  • Developed a drawing interface which can be used for questions containing uml and electric diagrams
  • Developed plugins for Chrome, Safari, Mozilla Firefox so that recruiters could directly invite candidates from their Gmail account. Also, made add-ons for Thunderbird and Outlook which can be used by recruiters to invite candidates for test.
  • Developed an internal panel which is currently being used by InterviewStreet administrators

Education

Indian Institute Of Technology GuwahatiCourses Taken

Department of Computer Science & Engineering CPI : 8.24/10
Theory Courses
CS568 Data Mining
CS570 Information Retrieval
CS502 Computational Geometry
CS344 Databases
CS346 Compilers
CS348 Computer Networks
MA321 Optimization
CS301 Theory of Computation
CS341 Operating Systems
CS343 Data Communication
CS203 Formal Languages and Automata Theory
CS204 Algorithms
CS222 Computer Organization and Architecture
CS242 Software Engineering
CS201 Data Structures
CS202 Discrete Mathematics
CS221 Digital Design
CS101 Introduction to Computing
Laboratory Courses
CS431 Programming Language Lab
CS345 Databases Lab
CS347 Compilers Lab
CS349 Networks Lab
CS243 Operating Systems Lab
CS243 Comp. Peripherals & Interfacing Lab
CS243 Software Engineering Lab
CS244 System Programming Lab
CS223 Hardware Lab
CS210 Data Structures Lab
CS241 System Software Lab
CS110 Computing Laboratory
Coursera Courses
Stanford University Cryptogrpahy I
Georgia Institute of Technology Games without Chance: Combinatorial Game Theory

Vidya Mandir Senior Secondary High School

Senior Secondary (XII) (CBSE Board) Percentage: 82.4%

Baldwin Boys' High School

Secondary (X) (ICSE Board) Percentage: 93.6%

Projects

Distributed Alignment of Sequences using Hash (DASH)

[SourceCode]
Programming Language : C++

  • Implemented a distributed system to align DNA reads obtained from experiments in human genome.
  • Implemented an indexer to create an offline index of genome to speed up mapping. Human genome has ~3 billion base pairs.
  • The system is capable of mapping DNA sequences upto a give error threshold.
  • Distributed implementation allows the use of ultra cheap machines to do powerful computations.

De-Identification of Medical Records

[SourceCode]
Programming Language : Java

  • Designed and develop a flexible software suite to help in clinical data analysis.
  • The suite currently deploys techniques to de-identify medical records and extract medical concepts from medical corpus.

Sp.RDBMS

[SourceCode]
Programming Language : Java

  • Developed a simple relational database management system from scratch in Java.
  • Using this RDBMS users could create multiple databases and tables.
  • Implemented various queries like SELECT, INSERT, CREATE, UPDATE, DELETE, etc.
  • All queries could contain FROM and WHERE clauses. We also implemented code to handle nested ANDs and ORs in WHERE clause.
  • We also implemented advance features likes indices, primary key, unique check constraints, etc. using a B+ Tree
  • Join queries corrosponding to Equi-Join, Natural-Join and Conditional-Join were also implemented.
  • Apart from this we ensured, that we reduce disk I/Os by using a buffer of pages and writing them to disk only when they need to be replaced.

Search Engine

[SourceCode]
Programming Language : Python

  • Developed a search engine using Python.
  • Indexing was done on 1.6 Million web pages.
  • Supported various methods for querying over the data set using '+','-' for AND & NOT operations.
  • Currently the scoring has been done using TF, TF-IDF, BM-25 method. Further developments in scoring methods along the lines of link analysis will be done.

Cp.FTP

[SourceCode]
Programming Language : C++

  • Implemented a FTP client-server application using sockets library in C++

LL(1) Parser

[SourceCode]
Programming Language : C++

  • Developed a LL(1) parser for a subset of C language using C++
  • We also implemented another version using tools like YACC and Flex.

HaskenBush

[SourceCode]
Programming Language : Haskell

  • Developed the game of Red-Blue-Green Hackenbush using Haskell
  • Provided a simple clickable user interface for player(s) to play.
  • Supported Human vs Human & Human vs Computer matches on random trees generated of various difficulties.
  • This was developed using various open source libraries like Gtk, Glade.

Coding Portal for IIT-Guwahati

[SourceCode]
Programming Language : Python

  • Developed an online portal where coding contests can be held by Coding Club of IIT Guwahati.
  • Users could code and submit solution on the portal in multiple languages.
  • Users could see their ranking on the leaderboard. They could also follow their friends and know their recent submissions.
  • A user friendly admin portal allowed addition/creation of contests.
  • This was built on a python backend using flask micro framework.

Assembler Linker Loader

[SourceCode]
Programming Language : Python

  • Built an software for converting custom assembly language code defined on an instruction set into 8085 assembly code.
  • Software would link different files and their variables and load it in appropriate location in the memory as defined by the user.
  • Software allowed user to declare and use macros across various files that are to be linked.
  • The final generated code would follow the standards of 8085 assembly code and could be run on a simulator like GnuSim8085 .

Gymkhana Automation Portal

[SourceCode]
Programming Language : JSP

  • Developed an online portal to automate the approval process for event and venue booking in IIT-Guwahati.
  • It enabled secretaries/teachers to raise application to conduct an event completely online including venue reservation etc.
  • The raised events would then be forwarded to respective authorities who could approve/cancel that event. This forwarding of application followed a pre-defined protocol setup by IIT Guwahati administrators.
  • Application raiser/approver could keep a track of progress of the application submitted.
  • An approved event would then be processed for venue booking by forwarding the application following the preset protocols.
  • This project was build using JSP and MySQL.
  • This portal was the winning entry of website development competition held in Kriti - Inter-Hostel Technical Competition 2013

SilentZio

[SourceCode]
Programming Language : Java

  • Developed an android application to manage(by silencing) calls of the user according to his Google calendar events.
  • User could add/remove the events filters for which he wants to silence the calls.
  • User could also enable the SMS feature which would send a SMS to the caller based on the calendar events.
  • I contributed in this project by designing and developing the UI, Core Logic, and Managing User Data.
  • This application can be installed from Google Play Store (Not working on Android v4.1+ ).

Card Matching Game

[SourceCode]
Programming Language : Visual Basic

  • Developed a Card Matching game for kids to help them sharpen their memory skills with fun.
  • As the user advances, level of difficulty increases due to change in number and type of cards
  • User could keep a track of his high score and attempt to beat it
  • This was developed on Visual Studio 2012 Development Environment.

Digital Bread Board Simulator

[SourceCode]
Programming Languages : Java, JS, PHP, HTML, CSS

  • Developed GUI for a Virtual Breadboard (circuit board) Simulator using Java.
  • It included features such as addition/removal of various electronic components using drag-and-drop interface, automatic snapping-in of components into nearest breadboard holes, warning mechanism for erroneous connections.
  • The software generated a text file containing connection information for all components.
  • The application was downloadable from a server with options for signup/login implemented using PHP and MySQL.

Spell Checker

[SourceCode]
Programming Language : C++

  • Developed a spell checker which could check and report a particular file for spelling errors and also suggests possible corrections.
  • An English dictionary was used for error checking which was stored in a left-child-right-sibling tree data structure which gave quick and efficient results
  • Also, relevant correction suggestions were provided back to the user which were found using Levenshtein Distance.

Skills

Languages
C
C++
Java
Python
PHP
JavaScript
Haskell
C#
JSP
Visual Basic
IDEs
Eclipse
IntelliJ
Microsoft Visual Studio 2013
QT SDK
Google App Engine
Adobe PhotoShop CS6
Adobe Illustrator CS6
Databases
MySQL
SQLite
Operating Systems
Linux
Microsoft Windows

Positions of Responsibility

Branch Representative

Department of Computer Science & Engineering, IIT Guwahati July'12 - Apr'13

  • Resolved various batch related issues and represented it at various stages
  • Organized various events like Freshers' Orientation, Freshers' Party, Departmental Picnic, etc.
  • Responsible for getting freshers familiar to the new culture prevalent at IIT Guwahati

Technical Secretary

Barak Hostel, IIT Guwahati July'12 - Apr'13

  • Built the hostel website and was responsible for maintaining and updating the site regularly.
  • Lead hostel in Kriti - Inter-Hostel Technical Competition & represented hostel in various technical competitions throughout the tenure.
  • Looked after all the technical needs and issues of the hostel.