Hansi Ji
ac1tpd@r.postjobfree.com 763-***-****, GitHub: https://github.umn.edu/jixxx217
EDUCATION
Bachelor of Computer Engineering
University of Minnesota-Twin Cities
Major GPA: 3.3
INDUSTRIAL Software Development Engineer (SDE) Co-op – Pentair Full year 2015 EXPERIENCE Programmable Logic Controllers (PLC) with Agile Development Process
• Communicated with users and technical teams to collect requirements. Modified the functions of PLC according to customer’s requests.
• Our Software team took ownership of the control code. Worked with a small number of developers from scoping requirements to launch of the project. Responsible for code reviews, source control, and testing the controllers over the software development cycle. PROJECTS Object-oriented Design: Puzzle Solver Spring 2016 AND RESEARCH Designed A Generic Solver to Solve Puzzles with Different Algorithms in Java
• Implemented cross-math and Sudoku puzzle classes as constraint satisfaction problems
(CSP) with built-in pruning algorithms. Designed AC3 and Iterative-deepening DFS algorithms that can generically solve any CSP.
• Articulated CSP problems to algorithms with a solver class, performed time and space complexity analysis and selected the optimum algorithm for customer specified puzzles.
• Wrote JUnit test cases in Eclipse to test the robustness of the software. Socket Programming: Multi-threaded Web Server Spring 2016 Worked in A Group of 3 And Implemented A Web Server in C
• Designed dispatcher threads to accept connections and place requests in a queue synchronized by conditional variables (CV), and designed worker threads to monitor the queue and serve requests to clients.
• Implemented a main to create and join threads. Tested the final product, a highly scalable and available server that takes in customer requests and generates webpages. Relational Database: Most Recently Used (MRU) Strategy Fall 2016 Upgraded PostgreSQL’s Buffer Replacement Policy to MRU in C
• Assigned and maintained timestamps to buffers in the ring. Evaluated the most recently unpinned buffer.
• Implemented a MRU strategy. Created database and wrote SQL for testing. Graph Algorithms Research: Undergraduate Research Program 2016 - 2017 Implemented Optimization Algorithms on Labeled Eulerian Tours (LET) in Python
• Took ownership of the project and designed classes that parsed DNA sequences to nested lists containing information of a LET graph.
• Invented algorithms based on existing optimization algorithms. Implemented the algorithms and sequentially executed the algorithms with a state machine. Managed to restore sequences of length 2000 and above.
PROGRAMMING Java, Python, C/C++, HTML, JavaScript, PostgreSQL, Prolog, Lisp, LaTeX. SKILLS AJAX, Relational Database, OpenCV, Agile.