Overview
Technical skills
Timeline
Roles

Overview

Firmware engineer focusing on low-level 8051 assembly and peripheral/protocol implementations at a middle experience level with practical register-level skills. The strongest proven skill is protocol-to-hardware implementation, demonstrated by Master.asm and the CRC_CALC and PACKET_RECEIVE logic that implement Modbus-like framing, timed byte reception, and CRC verification. There is little public evidence of automated tests, CI/HIL, watchdog or power-management strategies and no higher-level language or OTA infrastructure shown.

Technical skills

C++
Python
SQL
JavaScript
Node JS
TypeScript
C
Assembly• Middle
Python
FastAPI
Databases
SQLite
AI/ML
Claude
Gemini
Jupyter Notebook
Prompt Engineering
AI/ML
Pandas
NumPy
Scikit-learn
NLTK
Frontend
React.js
Frontend
DevOps
Git
Rest API
Design
Design

Timeline

Project Engineer Middle
KODE Labs Full-Time
Feb 2024 to Apr 2025 1 Year 2 Months In office
Translated smart building project requirements into data-driven automation solutions and ensured reliable data flow between devices, applications, and cloud services. Worked with fault detection and diagnostics, fault tolerance, and business intelligence tooling to validate data quality and improve monitoring. Performed system testing, troubleshooting, and commissioning to deliver accurate customer solutions.
Automation Engineer Intern Junior
KEK-ESA New Energy and Tetra Tech Internship
Sep 2023 to Feb 2024 5 Months In office
Supported engineering teams monitoring and analyzing power generation systems in a thermal power plant environment. Assisted with testing and validation by analyzing technical data and documenting findings according to engineering procedures. Collaborated with multidisciplinary teams on maintenance tasks and troubleshooting activities.
Middle Embedded Engineer Confidence: Medium Firmware Engineer
Firmware engineer focusing on low-level 8051 assembly and peripheral/protocol implementations at a middle experience level with practical register-level skills. The strongest proven skill is protocol-to-hardware implementation, demonstrated by Master.asm and the CRC_CALC and PACKET_RECEIVE logic that implement Modbus-like framing, timed byte reception, and CRC verification. There is little public evidence of automated tests, CI/HIL, watchdog or power-management strategies and no higher-level language or OTA infrastructure shown.
Embedded & Firmware
4/10
Low-level device code
Solid register-level 8051 firmware with interrupt-driven packet handling, explicit SP setup, and assembly routines for UART/timers; shows practical embedded firmware design but lacks unit/HIL tests and advanced fault-tolerance patterns.
Evidence
Light_Control_Modbus_Communication-/Master.asm: T0ISR (interrupt entry) and PACKET_RECEIVE routine implementing timed byte reception
Light_Control_Modbus_Communication-/Master.asm: CRC_CALC function implementing CRC-16 processing over a message buffer
Ultrasonic_Water_Level_Tank/Ultrasonic.asm: get_level, LCD_init and timer-based measurement flow
Hardware-Software Interface
6/10
Connecting code to hardware
Concrete protocol-level implementation with timing constants matching Modbus RTU inter-character and inter-frame timings and an explicit software CRC implementation; demonstrates protocol-to-hardware timing awareness.
Evidence
Light_Control_Modbus_Communication-/Master.asm: t15, t20, t35 constants and PACKET_RECEIVE using those timings for byte and frame timeouts
Light_Control_Modbus_Communication-/Master.asm: CRC_CALC implementing bitwise CRC update using CRC_MASK_MSB/LSB
Light_Control_Modbus_Communication-/Slave2.asm: ANALYZE_DATA validating function codes and register/address/value fields
Resource Constraints
3/10
Working with limited resources
Manual static RAM and code placement, explicit SP and DPTR manipulations and ORG sections show resource-conscious layout but there is no evidence of measured memory/flash budgets or linker scripts and no documented stack-depth analysis.
Evidence
Light_Control_Modbus_Communication-/Master.asm: MOV SP,#35H and usage of fixed RAM addresses (20H, 21H, etc.)
Light_Control_Modbus_Communication-/Master.asm: ORG 1000H/1100H/1200H code/data placement for request packets
Ultrasonic_Water_Level_Tank/Ultrasonic.asm: direct RAM stores for converted digits (addresses 41-43) and manual DPTR based data accesses
Real-time & Timing
4/10
Precise timing control
Uses timers and interrupts for measurement and protocol timeouts which is correct for 8051; however many operations use busy-wait loops and delay-based routines rather than capture/compare hardware or event-driven low-latency designs.
Evidence
Ultrasonic_Water_Level_Tank/Ultrasonic.asm: get_level uses TR0/TF0 and jnb/jb loops to capture echo timing
Light_Control_Modbus_Communication-/PACKET_RECEIVE routines: set TH0/TL0 with t15/t20/t35 then wait for TF0 or RI to implement Modbus timing
delay routines in Ultrasonic.asm: delay_10us, delay1ms, delay_2s implemented with DJNZ loops
HDL & Circuit Logic
Designing digital circuits
Not evidenced in public code
Reliability & On-device Testing
2/10
Testing on real hardware
Basic packet-level error handling is present (parity checks, CRC verification and setting PACKET_ERROR flags) but there is no evidence of watchdog usage, firmware integrity checks, OTA or on-device test harnesses and no CI/HIL artifacts.
Evidence
Light_Control_Modbus_Communication-/Master.asm: PARITY_BIT and PARITY_ERROR handling in PACKET_RECEIVE
Light_Control_Modbus_Communication-/Master.asm and Slave*.asm: CJNE checks and CRC_CALC followed by PACKET_ERROR / PACKET_END handling
Expertise
Low-level Development & Tooling• Middle
Industries
Hardware• Middle
Technologies
Assembly• Middle
Recommendations
  • Develop small industrial/embedded devices requiring low-level UART/timer-based protocols such as Modbus RTU or simple sensor gateways where assembly-level performance is required.
  • Implement and document watchdog and power-management strategies and add on-device test vectors or scripted HIL runs (Renode/QEMU) to increase reliability and testability.
  • Refactor protocol parsing and CRC logic into well-documented C modules to improve maintainability while keeping critical timing paths in assembly if needed.
  • Add automated tests and CI that exercise packet framing, CRC validation and parity/timeouts to catch regressions early.
Repositories
The developer's experience in this domain has been verified based on AI analysis of the following repositories:
Junior AI/ML Engineer Confidence: High Data-centric
Text classification engineer (junior) focused on simple SMS spam detection pipelines using TF-IDF and classical classifiers. The strongest proven skill is end-to-end notebook-level text preprocessing and modeling demonstrated by the TfidfVectorizer usage and LogisticRegression training in the provided notebooks. The public code lacks reproducible experiment management, robust validation, model serialization or production deployment artifacts.
Model Architecture & Training
2/10
How well models are designed and trained
Uses standard sklearn model (LogisticRegression) and TF-IDF with no custom architecture, hyperparameter tuning, or training loop control.
Evidence
Message_Inspector_/Message_Inspector_.ipynb: model = LogisticRegression()
Sms_Spam-Detector/sms_spam_detection.ipynb: model.fit(X_train_features, Y_train)
Data Pipeline & Feature Engineering
3/10
How data is prepared for models
Basic data cleaning and feature engineering: duplicate removal, text length/word/sentence counts and TF-IDF vectorization; pipeline is notebook-level and ad-hoc.
Evidence
Message_Inspector_/Message_Inspector_.ipynb: df = df.drop_duplicates(keep='first')
Message_Inspector_/Message_Inspector_.ipynb: df['num_words'] = df['text'].apply(lambda x:len(nltk.word_tokenize(x)))
Sms_Spam-Detector/sms_spam_detection.ipynb: vectorizer = TfidfVectorizer(stop_words='english', lowercase=True)
Experimentation & Evaluation
2/10
How results are measured and tested
Minimal evaluation practices: train/test split and accuracy reporting only; no cross-validation, experiment tracking, or structured ablation.
Evidence
Message_Inspector_/Message_Inspector_.ipynb: X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.2, random_state=3)
Sms_Spam-Detector/sms_spam_detection.ipynb: print('Accuracy on test data : ', accuracy_on_test_data)
MLOps & Deployment
1/10
How models are shipped to production
No MLOps or deployment artifacts; only an inline predict_message function in notebooks, no serialization, API, or CI/CD integration.
Evidence
Message_Inspector_/Message_Inspector_.ipynb: def predict_message(msg): features = vectorizer.transform([str(msg)]); pred = model.predict(features)[0]
Computational Efficiency
1/10
How efficiently computing resources are used
No computational-efficiency engineering beyond using TF-IDF sparse matrices; no GPU, batching, quantization or profiling evidence.
Evidence
Message_Inspector_/Message_Inspector_.ipynb: printed <Compressed Sparse Row sparse matrix ...> from TF-IDF vectorizer
Research Depth & Innovation
1/10
Depth of research and new ideas
No research depth or novel algorithms; the work applies textbook approaches without paper implementations or reproducible experiment protocol.
Evidence
Sms_Spam-Detector/sms_spam_detection.ipynb: end-to-end use of TfidfVectorizer and LogisticRegression only, no custom layers or paper code
Expertise
Conversational AI & Chatbots• Junior
Industries
Telecommunications• Junior
Technologies
AI/ML
Python
SQL
C++
Rest API
Claude
Jupyter Notebook
FastAPI
Scikit-learn
Prompt Engineering
Pandas
NumPy
Git
SQLite
Gemini
NLTK
Python• mentioned only
Recommendations
  • Harden and standardize the data pipeline: fix inconsistent column/variable names, remove hard-coded local paths, and add unit tests for preprocessing steps.
  • Improve evaluation rigour: add cross-validation, confusion matrix/precision-recall metrics, and simple experiment tracking (W&B or MLflow).
  • Make the model production-ready: add model serialization (joblib/pickle), a small inference API wrapper, and basic input validation for predict_message.
  • Refactor the notebook into modular Python scripts or a package to improve reproducibility and enable automated testing and CI.
Repositories
The developer's experience in this domain has been verified based on AI analysis of the following repositories:
Junior Frontend Developer Confidence: Medium UI Engineer
A junior frontend UI engineer focused on clean, responsive static websites with attention to visual polish. The strongest proven skill is building responsive, accessible-first static pages as shown by the index.html structure and style.css responsive rules and visual patterns. There is little to no evidence of advanced frontend architecture, async state management, testing, or performance instrumentation in public code.
UI Component Architecture
2/10
How interface parts are built
Minimal component architecture; static HTML with repeated markup and a small script for UI toggles rather than reusable components or a design-system implementation.
Responsive & Cross-browser
4/10
Works on all screens and browsers
Basic responsive work is present with a mobile media query and fluid typography via clamp; cross-browser feature detection and RTL/i18n readiness are not evidenced.
Performance Optimization
2/10
Speed of the interface
No measured performance work or code-splitting; the site follows a minimal asset approach (single CSS and JS) which helps performance but there are no explicit optimizations or analysis artifacts.
Accessibility & Semantics
3/10
Usable for everyone
Some semantic and accessibility basics are present such as an aria-label on the menu button and use of native links, but there is no focus management, keyboard handling for the custom mobile menu, or automated a11y tooling shown.
State Management & Data Flow
1/10
Managing data in the app
State is local and trivial; class toggles in a single small script control the hamburger menu with no async flows, cancellation, optimistic updates, or state-machine patterns.
UX & Visual Polish
4/10
Look and feel quality
Good visual polish for a small site - consistent dark theme, transitions, hover effects and backdrop-filter in the navbar improve perceived quality, but there are no advanced UX patterns like skeletons, undo, or staged loading.
Technologies
Frontend
Design
JavaScript
TypeScript
Node JS
React.js
JavaScript• mentioned only
Recommendations
  • Develop small brochure or portfolio websites with responsive layouts and polished UI interactions.
  • Implement and iterate on UI components and pattern libraries to move repeated markup into reusable modules.
  • Work on accessibility improvements such as keyboard interaction for custom controls and automated a11y checks.
Repositories
The developer's experience in this domain has been verified based on AI analysis of the following repositories: