Sagun Pandey
Sagun Pandey has around * years of experience serving as a key contributor across all software development life cycle phases including analysis, architectural design, prototyping, development, and testing of application of which last 2 years are relevant to object-oriented programming and web-based software design/development using Java Technologies. Sagan Pandey is being presented for the role of Java full Stack Engineer. GitHub – https://github.com/sagunpandey
Major Strengths:
Very good understanding of Object Oriented Programming, Data Structure, Algorithms, Design Patterns and Distributed Systems
Experienced in working with SQL databases like MySQL, PostgreSQL, Oracle and have some knowledge of NoSQL databases like MongoDB
Good knowledge about Object Relational Mapping (ORM) specifically Hibernate ORM
Excellent working experience in backend development using different spring modules like Spring Core Container Module, AOP, MVC, Security, Data, Transaction Management etc.
Extensive experience in developing Web interfaces using HTML5, CSS3, Bootstrap, SASS, LESS, JavaScript, jQuery, AngularJS, React JS and Backbone JS
Experienced in performing automation using Selenium, Java and performing Behavioural driven testing using Cucumber
Experienced in working with Version Control Tools like SVN and Git
Expertise working in Agile methodology environments like Scrum
Skilled in building tools like Ant, Maven, and Gradle and using them with continuous integration tools like Jenkins, as well as in designing overall architecture of the web application
Able to maintain quality and ensure responsiveness of applications combined with excellent presentation and communication skills and drafting technical documentation
Excellent at displaying research aptitudes and immense patience to learn new languages
Education:
Masters in Computer Science, Lamar University, Beaumont, Texas, United States, Dec 2017
Bachelors in Electronics and Communication Engineering, Tribhuvan University, Kathmandu, Nepal, Dec 2013
Honors, Awards and Achievements
Outstanding Student Award, Lamar University: Fall 2017
Twice the winner of National Robotics Competition organized by Robotics Association of Nepal (RAN).
Technical Summary:
Operating systems: Windows 10/8/7/XP, Linux (Ubuntu, Fedora, Delian)
Languages/Front End: Java/J2EE, Spring Framework, Spring Boot, Android, JavaScript, AngularJS, ReactJS, HTML, CSS, XML, JSON, Bootstrap, jQuery, Python
Version Control: Git, SVN
Databases: MySQL, PostgreSQL, SQLite, H2, MongoDB
Scheduler: JIRA, OpenERP
Tools/Utilities: JUnit, Selenium WebDriver, Maven, Gradle, Jenkins, Eclipse, IntelliJ
Professional Experience:
August 2016 – December 2017
Pursuing Master Degree
Academic Projects
PROJECT #1: Access Control System, August 2017 – December 2017
Access control system based on NFC and Smart Card Technology. This software system provides credential-based access control to various resources of school such as lab, classroom, lockers, etc. Besides that, the system also serves for automated attendance, identification and management of the visitors.
Responsibilities:
Coded and debugged Access Control System backend using Java and Spring framework APIs like MVC, AOP, DAO, JDBC, etc.
Designed and developed web services to provide services to the clients (NFC Readers and Reporting applications) using RESTful APIs
Researched ways to integrate the system with surveillance video for additional security
Designed and developed admin panel using ReactJS with Flux Architecture
Employed ACS NFC Smart Card technology for access control
Wrote excellent documentation and hand overs for the continuation of the project
Environment: Java, Spring Boot, Hibernate, PostgreSQL, JavaScript, HTML, CSS, ReactJS, RESTful Webservice, PC/SC Driver, ACS NFC Card Reader SDK
PROJECT #2: Early Warning System, August 2017 – December 2017
GitHub - https://github.com/sagunpandey/ews-app
Early Warning System is the system which includes a set of capacities that are able to generate the information and inform people who would be affected by the disaster so that they could prepare themselves in order to take necessary preparations.
Responsibilities:
Designed and developed Android app for monitoring hydrologic data and alert dissemination
Implemented Flux Architecture for unidirectional data flow using Event Bus and design patterns
Used Firebase Cloud Messaging (FCM) service for sending push notifications to Android devices
Adopted Topic-based Publish-Subscribe model for multicasting alerts
Collaborated with team as a team leader and was responsible for system architecture design, system abstraction and protocols definition
Assisted the team with backend development (Spring, Hibernate, REST API) and writing client application in Python for simulating sensor behavior
Environment: Java, Android SDK, Retrofit, Dagger2, OkHttp, JSON, GSON, RESTful APIs, Spring, Hibernate, MySQL, Python, Gradle
PROJECT #3: Android Game, May 2017 – August 2017
GitHub - https://github.com/sagunpandey/spooky-spider-smash
‘Spooky Spider Smash’ is a 2D Android game where a player has to interact with the game by touch and kill spiders crawling across the screen. Another game called ‘Little Monster’ is a pet game where a user has to nourish the monster and constantly keep it happy. These games are based on Android SurfaceView and utilizes threads, game loops, timing mechanisms and interpolation for implementing game engine.
Responsibilities:
Created 2D Android games using Game Loop and Animation
Utilized Adobe Photoshop, Adobe Audition and other editor applications to create graphic and audio resources for the game
Environment: Java, Android SDK, Adobe Photoshop, Adobe Audition
ExtremeTix Inc., Houston, Texas
May 2017 - Aug 2017
Java Engineer on Test Automation
Web Tix Test Automation Framework' provides an execution environment for the automation of test scripts that allowed automated regression testing of ‘WebTix', a frontend/web interface for the benefit of clients.
Responsibilities:
Extensively used Selenium WebDriver and Spring Boot combined to write automation scripts for dynamic pages of ‘WebTix'.
Integrated automated tests with Cucumber (behavior-driven testing framework) to allow Quality Assurance team write high-level use cases in plain text.
Collaborated with the QA team in writing concise documents to help configure the framework and add new automated tests as required, as well as worked on JIRA tool to create/track new projects.
Interpreted and converted manual test cases into automation smoke and regression suites while training and supporting the QA team with automation framework and script issues.
Used Selenium Grid to run parallel tests across multiple browsers and platforms.
Environment: Spring Boot, Selenium WebDriver, Selenium Grid, Cucumber, JUnit, AngularJS, HTML, CSS, JavaScript, Browsers (Chrome, Firefox, Safari, Edge, IE), Grunt, Maven, Git, Jenkins
Real Time Solutions Pvt. Ltd., Lalitpur, Nepal
May 2014 - June 2016
Full Stack Java Engineer
A system to track tourists, trekkers, guides, porters and other people involved in tourism industry at each strategic locations for security, ticketing, and reporting purposes. The information of these people are stored in a smart card (NFC tags, Mifare, DESFire, etc.) which they carry with them. Entries made on the checkpoints using a card helps in verification, identifying illegal entries, paying ticket prices, estimating the position of trekker in the region, and so on.
Responsibilities:
Worked on various aspects of application development, including requirement analysis, design, and testing
Employed ReactJS with Flux architecture in creating a dynamic and reusable user interface for registering trekkers, registering checkpoint entry activities and reporting
Developed Java SDK and driver software for creating the card reader (PUA-310V-0/M2U2/Y4) so that it operates in a Linux environment
Developed Java SDK for ACS NFC Reader device (ACR1252U USB NFC Reader III)
Environment: Java, spring, Hibernate, PostgreSQL, React JS
PROJECT #2: Visitor Management System
A sophisticated security system that registers and keeps track of people on the organization’s premises. The software is integrable with ‘Access Control System’, ‘Attendance System’, and different other hardware interfaces and security modules.
Responsibilities:
Used Spring Framework to create the business logic on the app server and Facebook’s ReactJS to develop the frontend
Converted a non-React Web Admin UI template to React application for developing the admin panel for VMS
Deployed a plethora of tools such as Open ERP for project management, Git for source control and versioning & sophisticated IDEs such as IntelliJ to optimize efficiency
Created layers of database access by employing Spring Data JPA and Hibernate
Environment: Java, spring, Hibernate, PostgreSQL, React JS
PROJECT #3: Queue Management System
Queue Management System (QMS) is a token-based waiting line/queue management system for managing customer flow. Under the brand name ‘Easy-Q’, this system has been accumulating a bunch of products and solutions that help organizations around the world to get the most efficient work flow in their customer service department.
Responsibilities:
Wrote core software logic for QMS in Java
Developed plugin architecture and implemented RS485, TCP and HTTP channels as plugins for interfacing QMS hardware devices
Worked with JS, JSP, HTML, CSS, Bootstrap, AngularJS to design and develop interactive user interfaces
Managed client interactions which involved handling technical aspects of a sales pitch
Environment: Core Java, MySQL, AngularJS
PROJECT #4: Imja GLOF Alert
Mobile (Android and iOS) application targeting local community and tourists for Imja GLOF (Glacial Lake Outburst Flooding) Risk Management in Khumbu Area, Solukhumbu, Nepal.
Responsibilities:
Created the app using cross-platform mobile development tools such as PhoneGap/Cordova with jQuery Mobile
Explored alternative cross-platform mobile application development technologies like Titanium and Xamarin for building
Worked on application development using Ionic Framework which is built on top of AngularJS and Cordova
Environment: AngularJS, Apache Cordova, Phone Gap, jQuery Mobile, NPM, RESTful Webservice
PROJECT #5: Nepal Flood Alert
Mobile (Android) application for real time monitoring of hydrological parameters of rivers such as water level, trend, precipitation etc. and alert dissemination during flood risks.
Responsibilities:
Built mobile application in native Android development platform for Android devices supporting Android OS version from Ice-cream Sandwich to KitKat.
Utilized XML, and JSON to parse, display, and navigate through large quantities of data in an intuitive and efficient manner.
Integrated 3rd party libraries including ActionBarSherlock, GMaps, Volley, etc.
Participated in design discussions and pre-sprint planning exercises.
Environment: Java, Android Programming, Grade, Git, Google Play, Google Maps API, Git, Photoshop, RESTful API, SQLite
Bajra Technologies, Kathmandu, Nepal
March 2014 to May 2014
Java Developer Intern
Nepal Tourism Board Project
Official website of Nepal Tourism Board and software system including different modules such as tourist registration, MRP scanning, reporting and information dissemination.
Responsibilities:
Built user-interface for the passport reader system in Java Swing and defined protocols for UI to communicate with the software core
Participated in the backend development and optimization of Nepal Tourism Board’s website
Developed the entire MRP (Machine Readable Passport) reading module both backend and frontend by utilizing Java 1.7 and Swing
Researched and optimized the search engine for locating resources in NTB’s website
Environment: Java, Swing, PHP (Pyro CMS Framework), HTML, CSS, JavaScript, Git
Real Time Solutions Pvt. Ltd., Lalitpur, Nepal
Jan 2013 - May 2013
Software Developer/Intern
Responsibilities:
Designed and developed applications using Scrum, an iterative and incremental Agile Software Development methodology, as well as carried out back-end development using PHP (CodeIgniter MVC Framework).
Developed CMS like system majorly with PHP and MYSQL and created data entry forms in HTML set in with PHP.
Built a file-crawler app in CodeIgniter for sorting and removing duplicates and redundant files.
Environment: PHP (CodeIgniter MVC Framework), MySQL, HTML, CSS, Git