I am Senior Ruby developer/ Js hacker and a blogger.
Senior software craftsman featuring expertise in Ruby on Rails, Coffeescript, web frameworks and other programming languages, a passion for Web 2.0 trends, APIs, mashups and other disruptive technologies, and experience managing teams of talented and passionate young developers.
2014 - present
Freelance Security Consultant.
Working as a freelance security consultant for clients and affiliates of Startupnomads, providing Cyber security analysis and protecting websites and networks from cyber threats, such as malware, denial-of-service attacks and viruses.
Senior Ruby Developer @ Ruby Kitchen Technosol
from 2012 to present day
Senior software Engineer responsible for building enterprise level applications from scratch, fine tuning it for performance, scaling it up to meet the demanding needs of the web. Mainly a Solution architect and a DB architect, who loves to stay behind the scenes(as a back-end engineer), but doesnt feel shy to get hands dirty in front-end development. Also a hacker who always scans for XSS, CSRF, LFI, RFI and loves to play with shell scripts (sudo rm -RF is one of my favourite commands, juz kidding ;)). Sometimes fits in the role of a 'Chef' (DevOps, they call it these days) along with 'Jenkins', 'Travis' and 'Capristano'. Also a mentor for novice and trainer for the newbies.
Freelance Web Developer
from 2009 to 2011
LAMP Stack Developer
Worked as a freelance web developer building websites and applications using the LAMP Stack.
B.Tech in Computer Science and Engineering
from 2008 to 2012
Completed B.Tech from CUSAT
You wouldn't be much interested in this section unless you are a father of a beautiful young girl who is looking for a bridegroom for her ;)
Red Hat Certifed Engineer
from 2012 to present
Obtained Red Hat Certification for RHEL 6 - License 120-026-158
Journey from a Newbie to novice to professional
I'm 23 years old, from the "Venice of the East", the very own "Gods own country", Kerala, who codes Ruby, JS for a living, hacks for fun and learns for passion. I completed my schooling from Matha Senior Secondary School School and Govt: H S S, Kalavoor. With a passion to learn more about the technology and computers I joined College of Engineering Chengannur(CEC). After a run-in with Laplace and Fourier equations and a few bouts with the calculus, I decided to spend more time partying and switched to interest to programming. I often wondered if I'd made the wrong decision. But I believe that, there are scientists and mathematicians and pilots and doctors and teachers and others of all professions but, in the end, it is the engineer who takes ideas from paper and creates material things that work. There is much to be gained from understanding an engineer's practical perspective, and so I still believe I have made the right decision.
Love what you do and do what you love.
Started as a LAMP Stack web developer, building simple websites, gained exposure and experience to enterprise level web applications, frameworks and portals that included complex business logic, analytics, and financial merchant payment gateways.
I found my niche in my programming career when I started developing MVPs using Ruby on Rails. Converting ideas from paper to prototype and then to MVP and scaling it up was always challenging and interesting. I enjoyed the way of transformation whether its bootstraping an application using Rails 3.2, with mongoDB as choice of database for flexibility in development, front-end using Twitter Bootstrap and jQuery, and Active admin for adminitration and then porting the entire application to Rails 4, using websockets for real time communication, using Angular JS to communicate over the APIs, using Delayed Jobs/Resque/Sidekiq for scheduling long running tasks and sharding the database across multiple instance of EC2.
Experience Gained or Challenges I loved the most.
Automate a Legacy system
The first rule of any technology used in a business is that automation applied to an efficient operation will magnify the efficiency. The second is that automation applied to an inefficient operation will magnify the inefficiency. -- Bill Gates.Automate a legacy system, from paper works, of a company, running across its various branches distributed all over kerala, to a fully functional CRM and help them increase their productivity and efficiency was a major challenge. Build an easy to understand UI so that the users can get adapted to the new UX, and at the same time meeting custom specific requirements.
Build complex analytical engine
There is a magic in graphs. The proﬁle of a curve reveals in a ﬂash a whole situation — the life history of an epidemic, a panic, or an era of prosperity. The curve informs the mind, awakens the imagination, convinces. --- Henry D. HubbardBuild a complex analytical engine that predicts and projects the financial status of an individual based on his current financial assets and a set of behavioral patterns of his budget, with margin of error almost close to zero, an interesting as well as technically challenging task.
Pin point calculations and data mining through various levels of data, processing complex queries over more than a million records to find the best combination was an exigent task. Code optimization and performance tuning was the key at every step in order to keep the users abstracted from the underlying complex architecture.
An MVP to a fully featured Product
"Everything should be made as simple as possible, but not simpler." -- Albert Einstein
Build, Break, Fix, Build, Repeat. From idea to prototype and to a public beta, the various steps when it comes to building a product. The "Aha" moment for a developer is when the product you had been working on for day and night goes into public beta and the first user signs up. Building a prototype is always an easy thing for a developer, but to take it forward to an MVP and then finally to a fully featured product needs some top-notch developer experience. Adding new features and modules to a system that is running live, at the same time scaling it for meeting the increasing concurrent users without downtime or issues was always challenging.
Hack the code - the White Hat Hackers Way.Today bringing your business online is a must in an effective business development strategy. Thus more and more sensitive data is moving to the web. There are always web security risks in any kind of web application, whether it was an off-the-shelf solution, an outsourced project, or developed in-house. Such issues include Cross Site Scripting (XSS), input validation, database escaping, URI security, de-registering globals, error reporting, and intentional or accidental 'back-doors'. I have worked as a security consultant for some startups based in Italy, Germany and UK remotely, offering penetration testing, and security auditing services.
Take what you can, Give nothing back..!! (Really ? )
This pirate toast is best suited when its said by Capt. Jack Sparrow. But what does it have to do with a developer ?. Sadly the new developers coming to the programming community tend to possess this attitude. They take every available resource from the community for their benefit and returns nothing back to the community.
The older folks understand the importance of community and try to give back the community thier knowledge and experience as Open Source Contributions. Cant imagine those days if Matz had not open sourced Ruby or had DHH kept Rails behind BaseCamp, or had John Resig not released jQuery. Being one of those developers who benefitted from the programming community, I always had an urge to give something back to the community(doesn't claim my contributions to be legendary). My humble contribution to the Open Source Community invove a few gems, contributions to some Ruby, JS libraries to keep it up to date.
Currently I contribute to Backbone-rails, Rails3-jquery-autocomplete, mathjax_rails.
Some other interesting stuff that I work on can be found here. I also find some time to mentor the budding developers remotely who needs guidance of an experienced developer to review their code.
Open source ContributionsMaintainer of Backbone-rails, rails3-jquery-autocomplete, mathjax_rails.
My Personal Blog
My scratch pad
This is where I scribble down my learnings.
Blog of Ruby Kitchen
Comapany's official blog.
Site Point Ruby(Former Ruby Source)
Guest post at Site point ruby (former Ruby Source).
An article on Active Support, How AR helps a Rails developer
Guest post at codelearn.
An article on different caching mechanisms in Rails
An article on N+1 Query problem and Bullet gem
Contact me today!
I am currently available for freelance/contract/part-time/consulatation works. Drop me a mail and we can discuss more.