Landslide susceptibility, Rangamati Hill Tracts(a district within Chattogram division, Bangladesh)

Undergraduate thesis, CUET

A susceptibility model for Rangamati Hill Tracts (a district within Chattogram division, Bangladesh), built over eight terrain and vegetation factors and served from a Flask application that assesses coordinates within the study area. It also produces a district map: 5,067 grid cells at about 1.1 km resolution.

392
inventory sites, balanced 196 to 196
5,067
district cells scored
0.965
out-of-fold ROC AUC
Input mismatch
The training columns are not measurements. They are reclassified class ratings, so SLOPE is one of five integers rather than an angle. The deployed application was feeding the model raw satellite readings, which meant every live answer was computed from inputs the model had never seen, and nothing raised an error.
Implementation
Replaced a single train and test split with repeated stratified cross-validation, 5 folds by 6 repeats, and added the most-frequent-class baseline the original lacked. Selected the model with TOS rather than accuracy. Reconstructed the missing conversion from measurement to class rating, which is partly recoverable: each factor's ratings sum to exactly 100, and the rating rises with the observed landslide rate, so the class count and ordering fall out of the data even though the cut points were never recorded.
Limitation
The training inventory contains equal numbers of landslide and non-landslide sites. The output is a relative susceptibility score, not a calibrated probability that a hillside will fail. The application labels it accordingly.
Next
Recover the original reclassification table, and set the decision threshold with the same cost asymmetry the selection rule uses. Choosing the model on a false-negative-weighted criterion and then thresholding at 0.5 is inconsistent.
Pythonscikit-learnFlask LeafletSRTMNASA POWER

The landslide inventory is not mine. It is reused under licence from Rabby and Li (2020), who mapped it from satellite imagery and field survey for an area that had no official inventory.

TOS, a relative model-selection metric

Publication and ongoing work

A selection metric that scores candidates against the pool they compete in, requiring an accuracy axis and an error axis to be named separately. I was first author of the paper published at IEEE RAAICON 2021.

Why
It came out of the thesis above. Several candidate models sat within one standard deviation of each other on accuracy, and accuracy had no way to express that a missed landslide costs far more than a false alarm.
Open problem
The metric is pool-relative, so it is not independent of irrelevant alternatives: adding a candidate that cannot win may still reorder the ones above it. Demonstrable on the thesis data.
EvaluationModel selection Class imbalanceCost sensitivity

Workflow metrics dashboard

Production, client project

A real-time dashboard over Jira's REST API tracking experiment release frequency, developer hours and team progress, used by internal teams and stakeholders to adjust sprint planning.

API constraints
Jira's API paginates and rate limits, and the interesting quantities are derived rather than stored, so the work was in aggregating issue histories into release cadence and effort within the API's request limits.
ReactNode.jsExpress Jira REST API

Airtable to Jira sync

Production, client project

A Python integration with custom webhook endpoints giving real-time bi-directional sync of tasks, statuses and timelines between Airtable and Jira, removing manual re-entry from the experiment tracking workflow.

Sync consistency
Bi-directional sync invites echo loops, where a write on one side triggers a webhook that writes back to the origin. Making updates idempotent and origin-aware was most of the work.
PythonWebhooksAirtable API Jira REST API

Engineering context

Software Engineer, EchoLogyx Ltd., Nov 2022 to present

My work focuses on Web Experimentation and CRO Development. I design and analyse web experiments on live production traffic: around 800 experiments so far, of which roughly 30% reached statistical significance. The work includes defining sample sizes before an experiment and analysing its result at the planned endpoint.

The dashboard and integration above support this work by collecting release metrics and keeping experiment records consistent across tools.