Source

my-cv / madhusudancs-short.tex

%% start of file `madhusudancs-short.tex'.
%% Copyright 2009 Xavier Danaux (xdanaux@gmail.com) and Madhusudan.C.S <madhusudancs@gmail.com>.
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
% available at http://www.latex-project.org/lppl/.


\documentclass[10pt,a4paper]{moderncv}

% moderncv themes
\moderncvtheme[green]{casual}                 % optional argument are 'blue' (default), 'orange', 'red', 'green', 'grey' and 'roman' (for roman fonts, instead of sans serif fonts)
%\moderncvtheme[green]{classic}                % idem

% character encoding
\usepackage[utf8]{inputenc}                   % replace by the encoding you are using

% adjust the page margins
\usepackage[scale=0.85]{geometry}
%\setlength{\hintscolumnwidth}{3cm}						% if you want to change the width of the column with the dates
%\AtBeginDocument{\setlength{\maketitlenamewidth}{6cm}}  % only for the classic theme, if you want to change the width of your name placeholder (to leave more space for your address details
\AtBeginDocument{\recomputelengths}                     % required when changes are made to page layout lengths

% personal data
\firstname{Madhusudan}
\familyname{Cheelangi}
\address{3801 Parkview Lane Apt 23A}{92612 Irvine, CA}    % optional, remove the line if not wanted
\mobile{+1-949-864-9635}                    % optional, remove the line if not wanted
% \phone{+91-80-28385761}                      % optional, remove the line if not wanted
\email{madhusudancs@gmail.com (preferred)}                      % optional, remove the line if not wanted
\extrainfo{\httplink{https://github.com/madhusudancs}, \httplink{https://plus.google.com/113141282929084508748/posts}, \httplink{https://www.ohloh.net/accounts/madhusudancs}} % optional, remove the line if not wanted
%\photo[64pt]{picture}                         % '64pt' is the height the picture must be resized to and 'picture' is the name of the picture file; optional, remove the line if not wanted
%\quote{``If you have a tough job that you need to get done quickly, give it to the busiest person''}                 % optional, remove the line if not wanted

%\nopagenumbers{}                             % uncomment to suppress automatic page numbering for CVs longer than one page

% Madhusudan.C.S command
\revnum{v0.10.0}

%----------------------------------------------------------------------------------
%            content
%----------------------------------------------------------------------------------
\begin{document}
\maketitle
\makefooter

\section{Proudest achievement}
\cvline{}{\textbf {PL241-MCS-Compiler}}
\cvline{}{Implemented an optimizing compiler all from scratch, reading from the source stream character-by-character
and writing out 0s and 1s. This compiler has its own parser, the algorithms to build the dominator tree and
transform the program to Static Single Assignment (SSA) form. It implements Common Sub-expression Elimination,
Constant Propagation, Constant Folding and partially implements Dead Code Elimination. I also wrote a \textbf{
SAT-solver based Register Allocator} which does register allocation on \textbf{SSA}. I also implemented the
ELF generator, an assembler and a simple linker and hand-wrote binaries to read and write integers from/to
STDIN/STDOUT. Source: \colorhttplink{https://github.com/madhusudancs/PL241-MCS-Compiler}}

\section{Education}
\cventry{2011--(expected 2013)}{Master Of Science, Computer Science}{University of California, Irvine}{GPA: 3.97/4.00}{}{}
\cventry{2005--2009}{Bachelor Of Engineering, Information Science And
Engineering}{Visvesvaraya Technological University}{B.M.S. College Of
Engineering, Bangalore}{First class with distinction (80.23\%)}{}
\cventry{2003--2005}{Pre University College}{M.E.S College Of Arts, Science And
Commerce}{Bangalore}{First class with distinction (86\%)}{}

\section{Technical skills}
\cvline{}{\textbf {From hand-writing x86 machine binaries (\colorhttplink{https://github.com/madhusudancs/PL241-MCS-Compiler/commit/66656d22638b5ebe4eb7a3ffb3ef61581405b0b1} ) to writing web applications with technologies like Python/Django, Ruby/Ruby on Rails and a few things in between like C/C++.}}
\cvline{}{For more details please checkout my \colorhttplink{https://github.com/madhusudancs}, \colorhttplink{https://bitbucket.org/madhusudancs} and \colorhttplink{http://code.google.com/u/madhusudancs/} profiles.  }

\section{Master thesis - work in progress}
\cvline{Title}{\textbf{External Sort: Forecasting-based optimizations}}
\cvline{Advisor}{Prof. Michael J. Carey}
\cvline{}{In this project I am trying to improve the performance of external sorting by
getting an overlap between the disk I/O and the in-memory merging during the merge phase of
external sorting. I am essentially trying to implement disk-level pipelining by exploiting
the properties of merge sort. Source:
\colorhttplink{http://code.google.com/p/hyracks/source/browse/\#svn\%2Fbranches\%2Fhyracks\_optimized\_sort}}

\section{Bachelor thesis}
\cvline{Title}{\textbf{Astute Song Hunter: Playback File Retrieval From Media
Servers Based On Humming Patterns}}
\cvline{Advisor}{Prof. R.Ashok Kumar}
\cvline{}{Along with 2 other team mates, I designed and implemented a search
engine that takes in the hum of the tune as a query, and efficiently searches
and retrieves the (closest) corresponding songs from the media server. In this
paper we have implemented a technique for searching a song based on its
acoustic properties. I was particularly responsible for designing and implementing
one of the two algorithms used for comparisons, the MaxMin approach and the
for the searching technique which matched the processed query against the database
on the server side. Paper, source code and more details at:
\colorhttplink{http://code.google.com/p/astute-song-hunter/}}

\section{Projects}
\cventry{Academic}{Twitter sentiment analyzer}{}{}{}
{Along with two other team mates, I implemented a twitter sentiment analyzer. The analyzer
reads the live tweets using the twitter API, builds the feature vector and passes it to
a classifier and returns the response based on classifier's response. For the backend
we used Scikit-Learn, a Python based Machine Learning library and MapReduce (Discoproject)
to fetch live feeds and build the feature vector. For the frontend we used bootstrap. Source:
\colorhttplink{https://github.com/madhusudancs/sentiment-analyzer}}

\cventry{Academic}{UI Design for U.S. Presidential Elections simulation game}{}{}{}
{Along with the 3 other team mates, I created the wireframes and designs using
HotGloo wireframe system for implementing an online multiplayer real-time game
that simulates the U.S. Presidential Elections. I was particularly responsible
for designing the home screen, the controls and the dashboards.}

\cventry{Google Summer of Code 2009}{Implementation of Task-based GCI-like Work Flow for Melange}{}{}{}
{Implemented a system, where administrators can create and mange tasks, students
can claim these tasks and submit their work, which can be reviewed by the mentors
which helps to run the Google Code-in (GCI) contest. This code is already in use
and Google Code-in 2010 and 2011 contests were run the on this code
\colorhttplink{http://code.google.com/gci}. This contest was previously
called Google Highly Open Participation(GHOP). The project was implemented in
Python, Django and Google Appengine. 
Source: \colorhttplink{http://bitbucket.org/madhusudancs/melange-mq}}

\cventry{Google Summer of Code 2008}{GNU/Linux Compatible /proc Filesystem for GNU Hurd Operating System}{}{}{}
{Implemented a sophisticated procfs pseudo-filesystem for “the Hurd” Operating
System. The project thus made the GNU/Linux process management tools like ps,
top, vmstat, skill, nice, pgrep, pstree, etc., run out of the box without porting
the them to Hurd. Source: \colorhttplink{http://github.com/madhusudancs/procfs}}

\cventry{Paper}{Optimal Streaming Protocol for Video-on-Demand Using Client's Residual Bandwidth}{}{}{}
{Along with the 3 other team mates, I designed a protocol through which videos
can be streamed through well connected network using cooperative chaining.
The protocol avoided wastage of bandwidth by implementing dual level chaining
at the client and the proxy server levels. I was particularly responsible for
designing the protocol and the chaining mechanisms.}

\cventry{Internship at Vee Technologies}{Dynamic Form Generation Application}{}{}{}
{Along with 3 other team mates, I implemented a web application, written in
PHP, to generate forms on the fly based on the definitions given by the
admins. We used MySQL, XML and related technologies like XSL and XSLT for
data management. I was particularly responsible for the modules that stored,
retrieved and manipulated meta-data of the dynamic forms in XML format. I was
also responsible for the module that rendered the form given the meta-data.}

\cventry{Academic}{Co-Sequential Processing Of Files}{}{}{}
{Implemented a ``Co-Sequential Files Processing System'' in C++ where
the bank transactions will be processed and posted on a day-to-day basis.}

\section{Experience}
\cventry{June, 2012--Sept, 2012}{Software Engineering Intern}{Google}{}{}
{I worked on implementing/integrating data analysis tools for Project Hosting on Google Code.}

\cventry{January, 2009--Current}{Core Developer}{Melange}{}{}
{I am a core developer (committer) on the Melange project. Melange is used
by Google's Open Source Programs Office to run its Google Summer of
Code\texttrademark  and Google Code-in\texttrademark  programs. I work on
Melange along with a globally distributed team. I work on all the aspects
of the project from \textbf{Python}, \textbf{Django} and \textbf{Google
Appengine} code in the backend to \textbf{HTML}, \textbf{CSS} and
\textbf{Javascript} code used in the frontend. I have over 1000 commits
to date. \colorhttplink{http://code.google.com/p/soc/}}       % arguments 3 to 6 are optional

\cventry{October, 2011--April, 2012}{Advanced Ruby on Rails Developer}{Office of Information Technology}{University of California, Irvine}{}
{I work on the academic personnels project called ``Recruit''. Recruit
is a University of California wide online system for recruiting faculty to
the respective universities. I am responsible for implementing new features
on the backend. The project is written in \textbf{Ruby on Rails}.}

\cventry{July, 2009--July, 2011}{Reasearch Assistant}{Free and Open Source software in Science and
Engineering Education(FOSSEE)}{Indian Institute of Technology, Bombay}{}
{Worked as a content generator, instructor, programmer for both
\textbf{scientific computing} packages and websites that fossee maintained
like \colorhttplink{http://scipy.in} etc. Also maintained the
\textbf{Mercurial} server hosted at \colorhttplink{http://hg.fossee.in}
and served as a part-time sys-admin for maintaining \colorhttplink{fossee.in}
servers to fill in the shortage of sys-admin resources. As part of the
work I delivered courses at various educational institutes in India. Have
delivered talks/lectures in ten workshops and two conferences till date.}       % arguments 3 to 6 are optional

\cventry{Google Summer of Code 2011}{Mentor}{Google Code-In with new architecture}{Melange project}{}
{Mentored an University student during the summer to implement the Google
Code-in (previously GHOP) module based on the Melange v2 architecture.}       % arguments 3 to 6 are optional

\cventry{Google Summer of Code 2010}{Mentor}{Social features for Melange}{Melange project}{}
{Mentored an University student during the summer to implement the features like
user profiles, calendar and documents sharing, etc. for Melange to make it more
social.}       % arguments 3 to 6 are optional

\end{document}