Sandeep.C.R
B-Tech, Computer Science
sandeep@sras.me
Work History
Software Engineer, (Haskell, Remote), https://www.serokell.io, September 2019 - Present
- Collaborated with development/maintenance of a library for Tezos blockchain that included parser, typechecker, interpreter and a DSL for developing Michelson smart contracts, a testing framework, REPL and various other tools, all implemented in Haskell.
- Worked in maintaining an online tool that summarizes Tezos voting process. This was implemented in Haskell on backend and Typescript/React on the front.
- Redesigned back-end architecture for a web service that used a in-built Tezos indexer using a third party blockchain indexer, to increase reliability.
- Designed and implemented a blockchain indexer for Tezos in Haskell, which removed the need for a third-party indexer which consumed too much resources. The new indexer reduced maintenance costs to nearly zero.
- Implemented the Tezos smart contracts for wrapped tokens, Stablecoins, DAOs with multi-signature capabilities, in Michelson.
- Worked in "Michelson in Rust" project to implement a Michelson parser, type checker and interpreter in Rust.
- For Solana network, implemented an SPL2022(https://spl.solana.com/token-2022) token standard "Transfer Hook" program in Rust that implements custom logic on top of the token logic.
- Collaborated in the implementation of component contracts for a cross-chain token swap application for TON network, using FunC smart contract language.
Haskell Contractor (Remote), https://www.vacationlabs.com, October 2018 - Present
- Worked in Haskell back end using Servant framework, and Elm (0.18) code, both to maintain existing code and to implement new features.
Senior Software Engineer, (Haskell, Remote), https://www.vacationlabs.com, March 2017 - April 2018
- Implement new features for their existing web app in Haskell using Servant framework.
- Implemented infra on top of Servant framework to provide detailed logging, that is similar to the one that is provided by Ruby on Rails out of the box.
- Implemented code that used Template Haskell to write boilerplate code for 'Opaleye' library to work with a medium sized PostgreSQL database.
- Worked with Angular2+ (Mainly on AngularJS/Angular2 interop), Typescript, AngularJS code base to implement front end functionality for web application (Ruby on Rails).
- Worked on implementing deployment and continuous integration processes using Docker and Google compute platform.
Angular.Js front end developer (Remote), https://stomt.com, July 2015 - April 2016
- Developed the core UI components (AngularJS).
- Did performance optimization to improve rendering speed for whole UI.
In-Office Jobs
Senior Tech Lead, Vtrio Solutions Pvt. Ltd (www.vtrio.com), May 2007 - Apr 2014
- Worked for individual clients, handled whole projects independently. Did design, implementation and maintenance of projects that involved mostly PHP/MySQL and front end technologies.
- Trained existing staff on using software development tools like automated testing, concepts and practical use of Distributes Version Control Systems like
Mercurial and Git.
- Acted as a tech lead to design and build webax.com. A Multilingual/Multi tenant hazard management and self monitoring tool. Involved technologies were PHP, MySQL and Apache Cassandra.
Web developer/System administration, GBS IT Solutions Pvt.Ltd (www.gbs-me.com), Sep 2005 - May 2007
- Was responsible for all the development work done by the company (Mostly in PHP), until expansion.
- Gathered business requirements from a wide range of business personals and implemented a full scale shipping/logistics software with an accounting package integrated with the web app.
Other relevant experiences
Some of my recent side projects (Haskell, Python, Elm, Webgl) and articles can be seen at http://sras.me. Source code is available from my public profile at https://bitbucket.org/sras.
Apart from that, I have the following Haskell related works that is in progress.
-
https://hackage.haskell.org/package/elminator- Is a tool to generate Elm (0.18 & 0.19) code from Haskell types that define types and encoders/decoders in Elm.
Attempts to solve issues/short comings with the currently availble packages in the same space.
-
https://github.com/sras/yaar- Is a webframework that tries to implement an interface similar to Haskell's Servant framework for developing type safe web interfaces. It is a completely different implementation that does not borrow code from Servant framework.
-
https://bitbucket.org/sras/repltalk - Is a python script that can wrap REPLs (GHCI integration included) and expose a language server to provide integration with various editors via plugins.
Educational Qualification
- Bachelor's degree (B-Tech) in computer science from Cochin University of Science and Technology (CUSAT) 2004 Batch.
- Minor project - A serial mouse driver for MS-DOS in NASM.
- A network sniffing/monitoring tool for Linux using PCAP packet capturing library.
Programming languages and technologies
- Haskell
- Elm
- Python3
- Javascript
- PHP
- HTML5/CSS/SCSS
- Angular/React/ELM
I also have a varying degree of experience with WebGL, Rust, Typescript, Java (Android), PHP, C and 8086 assembly language.
Database
- PostgreSQL
- MySQL
- SQLite
- Apache Cassandra
- Redis
Code Versioning Systems
Languages