Experienced Software Professional
Experience
Senior Software Engineer
Feb-2021 - March-2024 |
Bengaluru, India
-
Developed and maintained real-time backend applications which are core to Nference’s business. Applications ran on 180+ Million documents and Electronic Health Record (EHR) data of 6+ Million patients for healthcare providers - Mayo Clinic, Duke Health, Mercy Health.
-
Maintained and augmented the text search backend for the applications. Redesigned indexes used for supporting search so as to improve real-time search performance by more than 40% amidst growing datagen output size.
-
Helped to move backend for applications to Kubernetes clusters, reducing costs for running applications by more than 30% and improving deployment cycles.
-
Organized a regular sync up with doctors using the products to drive relevant feature development, thorough testing, and prompt bug resolution.
R&D Engineer II (Software Developer)
Sep-2020 - Present |
Vancouver, BC
-
Contributed to software applications for customers developing technology of tomorrow- things
like LiDAR systems for autonomous cars, virtual reality headsets, cellphone cameras,
communications equipment for data centers and new platforms for quantum computing.
-
Produced software applications which meet high standards for accuracy, user experience
and performance, and run on the latest desktop, enterprise, cloud and HPC computing systems.
-
Collaborated with Senior R&D Engineers to produce efficient, maintainable and modular production
code for scientific algorithms and user interfaces.
Research Assistant - Mesh Generation Software
Sep-2017 - May 2020 |
Vancouver, BC
-
Created a C++ surface mesh generation application (EDAMSurf) to produce surface meshes
automatically from a given triangulation.
-
Features in the mesh such as quad-dominance and anisotropy make the mesh suitable to serve
as an input to 3D mesh generator and produces more accurate and robust fluid flow simulation
results.
-
Worked on a large project using Jenkins CI and Git. Wrote unit tests and regression tests
for robust application development.
CGAL, Google Summer of Code |
Software Development Intern
May 2019 - July 2019 |
Vancouver, BC
-
Developed basic viewers for various data structures in Computational Geometry Algorithms
Libraty (CGAL) using C++, Git, GitHub, template metaprogramming concepts.
-
Basic viewers that I wrote are global functions that visualize 3D data-structures of CGAL.
They help to visualize the result of an algorithm and can other developers to debug their
code.
-
Interactive viewers were developed for data structures - Voronoi Diagram, Nef Polyhedra,
Periodic Triangulation and Arrangement 2D.
Indian Institute of Science |
Research Assistant - Interdisciplinary Work
Jan 2016 - July 2017 |
Bangalore, India
-
Developed an algorithm to convert spatial flame fronts into connected graphs using MATLAB.
Performed network analysis on the constructed graphs to infer flame front characteristics.
-
This study produced state of the art highly enriched graphical representation of flame
fronts and was a pioneering interdisciplinary work in complex networks and combustion
dynamics.
Projects
Secondary Animation using Dynamic Kelvinlets
Digital Humans Course Project |
Sep 2019 - Dec 2019
-
Implemented a procedure to automatically add secondary motion to objects given skeletal
animation keyframes for a model using linear blend skinning.
-
The algorithm solves elastodynamics equations to compute material response towards
elastodynamic forces.
-
The implementation runs in about real time (55.6 FPS) and requires no information about
the geometry of the object being animated. Technologies used - C++, Git, OpenFrameWorks
(OpenGL).
Canvas Drawing Application
Side Project |
March 2020 - April 2020
-
Created a canvas drawing application where multiple people can draw at the same time
on a canvas using Linux, Apache2, Php, and Google Firebase infrastructure.
Publications
-
Singh J., Olliver Gooch, Carl F. "Advancing Layer Surface Mesh Generation." AIAA Scitech
2020 Forum. 2020.
Best Student Paper
Award.
-
Singh, J., Belur Vishwanath, R., Chaudhuri, S., & Sujith, R. I. (2017). Network structure of
turbulent premixed flames. Chaos: An Interdisciplinary Journal of Nonlinear Science, 27(4),
043107.
-
Singh, J. (2020). Entire domain advancing layer surface mesh (EDAMSurf) generation (Masters
dissertation, University of British Columbia).