Resume

Sign in

Developer Java

Location:
Fountain Valley, California, 92708, United States
Posted:
March 06, 2018

Contact this candidate

Resume:

Yoongeun Kim ( Brian Kim)

* **********

Irvine, CA 92620

(408) 800- 8743

ac4py3@r.postjobfree.com

skype :: live:windkim60

linkedin: Yoongeun Kim

TECHNICAL SUMMARY

Language: C/C++, C#, Delphi, Perl, Bash-Shell, Visual Basic, Assembly, Pascal, Fortran, Fp, Prolog, Lisp, Motif, PHP, Java

Server: Tomcat, Glassfish, Squid, Apache, MS Transaction Server, Microsoft Internet Server

Protocol: TCP/IP, UDP, TELNET, HTTP, FTP, DNS,

Database: MySQL, MS Access, Codebase 5.0, DB/2, MS SQL Server and backend coding

Development Environment: Eclipse, MS Visual Studio, Embarcadero, SVN Sub Version Control System, Delphi (7, XE, XE2), X-window, NetBeans, JavaEE, Minitab

Technology: Object Orient Programming, COM, DCOM, Microsoft Foundation Class, Common Object Request Broker Architecture(Corba)

Skills & Experience

EMPLOYMENT HISTORY:

Harman, Novi MI 01/2017 – 03/2017 (System automation by Perl and Java)

Harman International Industries, Incorporated is an American company that designs and engineers connected products for automakers, consumers and enterprises worldwide, including connected car systems; audio and visual products, enterprise automation; and connected services.

The control of industrial machinery is often taken care of by Programmable Logic Controllers(PLC). The PLC’s provide process information to the control room, where the operator uses dedicated display to monitor the process.

Project: PLC programming by Perl Jan’17 to March,17 Perl, Java and JavaScript Developer

Make the engineering data flows freely in a richly interconnected manner that reduces the need to duplicate data by using Perl automation.

Provide the data set to the Oracle SQL Server for the Restful Web Service to use the data in the real time.

Core Java Programming for Java Server Pages.

Hibernate mapping for the persistent classes.

Java Swing programming for Lists, Tables, and Trees.

Java Script and JQuery Programming for User Interface construction.

Make XSD file for the large size data and validate against XML files.

CVS/Omnicare, Cincinnati OH 05/2016 – 10/2016 ( Refactoring codes by using Delphi 10.1)

CVS pharmacy is one of largest corporations in USA and hires more than 100,000 people. Its system software which manage its daily operations has more than 10 million lines of code. I modified the system software written by Delphi programming language for the system security remediation.

Targeted to developers and security practitioners, the Common Weakness Enumeration (CWE) is a formal list of software weakness types created to:

Serve as a common language for describing software security weaknesses in architecture, design, or code.

Serve as a standard measuring stick for software security tools targeting these weaknesses.

Provide a common baseline standard for weakness identification, mitigation, and prevention efforts.

To make the software to be strong against any possible attacks from the outsiders is the purpose of this project.

Project: Memory Leak(CWE #404) and Hard coded any sensitive information(CWE #259) May’16 to Oct,16 Delphi Developer

Team Size: 7

Environment: Delphi, Oracle, Microsoft Team Foundation Server, Visual Studio

Description: There are over 900 tables in Oracle database. And the application calls the tables, stored procedures very often. Whenever it wants to connect to the database, it uses the hard-coded password and id number. Also it uses SSN number to search the records in the database. If the attacker reads the memory in the system, the attacker can know all of the sensitive data for the CVS customers. So I changed the program not to be vulnerable from the attackers.

Also I handled the various memory leak problems which are caused by the wrong programming. I scanned all of the source codes and find the vulnerable places and replace the wrong codes by the healthy and robust codes.

Description: To make the codes to be healthy in terms of CWE. (There are more than 500 CWEs which make the software to be vulnerable from the outsider attack.)

Scan the source codes and make the security remediation.

North Pacific Inc, Irvine CA 06/2015 – 04/2016 (Java, Java Script and Perl)

This is my friend's the start-up company for B2C.

I helped him to install the system and to run the programs.

I also modified some programs to meet the company's need.

Project(1): Web Client Programming Application-

Environment: Apache Web Server, Perl, Java, Css, Html, Java Script, JQuery, JSON, XML, Window 7, My SQL

Description: To develop the company’s web site, I built the web site by CGI programming.

Designed the web site of the complex web hierarchy.

Make the customized per module which is working in Apache Web Server.

Make many HTML forms and Java Scripts for HTML forms.

Do some beautification of the forms by CSS

Construct the data transportation by using JSON and XML

Tomcat Performance Tuning to increase the Web Server Performance (Benchmark testing by using Apache Jakarta JMeter)

Restful Web Service by Java Spring Framework

Implement MVC by Java Spring Framework

Java Servlet Construction

Building Java Server Pages

Project(2): Interprocess Communication using Shared Memory C++ Developer

Environment: Linux Cento OS 7, gcc

Description: Using shared memory enables us to design a system where we have a single server and multiple clients communicating in both directions with the server. Communication is initiated by the client -- server is normally in idle state waiting for the client request. Communication is thread safe is a sense that only a single client may exchange information with the server at any moment of time. This is very useful for the high performance server architecture.

Connect all different servers and all different clients and make the thread safe environment for the communication.

Socket communication between the servers

Implement unicast, multicast, and broadcast interface for the networking by using sockets.

Decouple software component

Carefully controlled parallel processing

Asynchronous scheduling of workload components

Batching of asynchronous workload components to improve efficiency, throughput and scalability.

Project(3): Application-Resource Usage Matrix C++ Developer

Environment: Linux Cento OS 7, gcc

Description: To increase the performance and the throughput, make the matrix to optimize the throughput and the response time.

Calculate the total resource utilization for each resource for the application workloads represented in the matrix.

IST Inc, Aliso Viejo CA 01/2010 – 05/2015

IST Inc is a network software development firm. Its main product is WTCP which is the optimization of TCP. It uses the TCP slicing technology which is extremely difficult. The product consists of 3 parts which are WTCP (C Language) in the blade server, ONM Server (C++ Language) in the Linux Server, and ONM Client (Delphi) in the Window7. Its main customers are the big telecom companies to reduce the wireless telecom traffic. Its basic idea was provided by two former famous UC Irvine Professors who are “Tatsuya Suda” and “Wei Tsai”. IST worked with Korea Telecom(Korea) and NTT Docomo(Japan) for the testing and implementation of their system. I managed onshore team and offshore team together for the very large volume of network traffic testing at the core network of KT which covers 0.8 million customers in Korea.

Project(1): Perl supporting HTCondor distributed file system April’14 to May'15 Perl Developer

Environment: Linux Cento OS 5.8, HTCondor System, Perl, MySQL, MSSQL

Description: HTCondor is an open-source high-throughput computing software framework for coarse-grained distributed parallelization of computationally intensive tasks. By using HTCondor system, a lot of the text processing job can be distributed.

MySQL Server support via Perl DBI module.

MSSQL Server support via ODBC via DBD:ODBC module

Monitoring Space Usage on Database Servers

Project(2): CDN Modification Aug’14 to March'15 C++/Perl Developer

Environment: Linux Cento OS 5.8 / Ubuntu 10.0, Apache, Squid, Perl, C and C++

Description: CDN is to serve content to end-users with high availability and high performance. Squid Server is the open source code. Instead of working for the original single threaded version which is provided in the original code, the multithreaded version can handle the multiple CDN servers and backend and can make the total statistics for those servers. I modified the Squid Servers to work for the CDN Servers. So the multiple CDN server and the multiple Squid Servers are integrated together and are working concurrently.

Responsibilities: Designed, Developed and Implemented the statics gathering for the multithreaded environments.

Executed Squid server source modification via C++ for CDN (Content Delivery Network) to meet the company needs. Modified the various codes for the multithreading to enhance realtime processing.

Implement the adapter design patterns for the different network environments.

Make TCP socket programming between the main linux server and the 16 blade servers.

Unit Testing by using Cppunit Testing Farmework

Interprocess communication between processes by using Perl(IPC::Open2 IPC::Open3).

Project(3): Testing Performance Feb ‘14 to Aug'14 Perl Developer

Environment: Linux Cento OS 5.8, Ubuntu 10.0, Perl, Apache, MySQL

Description: Made the artificial wireless environments by using Linux System MTU (Maximum Transmission Unit) setting and the configuration of the networks between the computers. Tested for the different environments (Large/Small File Size, Long/Short RTT (Round Trip Time), Heavy/Light Network Traffic, etc)

Responsibilities: Design, Development and Implementation of the Perl Modules for each different environment.

Made Perl modules to do the polygraph testing for the web performance.

Compared the WTCP Performance with the existing TCP Products (Big, Cubic, Westwood, Reno) for purpose of the verification of the performance improvement.

MySql Database Accessing and storing by using Perl Script.

Project(4): Kernel Modifications and Testing Feb’13 to Feb'14 C/Perl Developer

Environment: Linux Cento OS 5.8, Perl, C

Description: Implemented WTCP by the theoretical guide line. And it verified in the various network environments.

Responsibilities: Modifyed and tested the original linux kernel codes and tested the packets in the wireless environments.

Implemented and modified WTCP Kernel in /linux/net/ipv4 by using WTCP algorithms ( tcp.c, tcp_input.c )

Guessed the optimal bandwidth for the network by using inter-packet arrival time and inter-packet departure time. The time makes the network to guess the optimal window size.

So it enables the network to carry out the maximum bandwidth utilization.

Monitored the per-connection TCP information of all the active connections, load “sockmon” utility with the kernel and measure the RTT (round trip time).

Measure the 10 consecutive moving average of the inter arrival time between the net buffer of Access Point and the net buffer of Mobile Device This is the main idea of WTCP algorithm.

Project(5): Squid Server Cache Modification Aug’12 to Feb'13 C++

Environment: Linux Cento OS 5.8, C++, Squid

Description: Implemented multiple Squid Server and make the integrated Cache checking mechanism by POSIX thread.

Responsibilities: Squid is the open source Web Server. It uses web caching technology. Web Caching refers to the act of storing certain web resources(i.e, pages and other data file) for possible future use. The web caching for single squid server is already implemented in the squid server. But IST uses the multiple squid server for the faster processing. To handle multiple squid server needs the integrated web caching technologies. So implement the integrated Web Caching by checking the multiple Squid Server, and increase hit ratio of the web page. This is achieved by POSIX threads implementation.

Use less bandwidth on the internet connection when surfing the web.

Reduce the amount of time web pages take to load.

Make the proper proxying for the web traffic by using the POSIX threads.

Make the dynamic memory management system for the Cache to use the dynamic memory very efficiently.

Project(6): User Interface Modifications and Data Display Dec’11 to Aug’12 Delphi Developer

Environment: Window7, Delphi XE, MySQL 5.5, Word/Excel

Description: Show the results and the statistics by the request of the network administrator. The front ends are made by three independent processes. Send/Receive Data by using com interfaces.

Responsibilities:

Make the reports by using Word/Excel OLE. Make the web form by using CSS.

Import the data from MySQL and transfer the data by using XML.

Notified the emergency alarms to the network administrator by using window message system. Modified Data Display by using ActiveX Data Objects(ADO) in Delphi XE.

Displayed the data in the relatively short time by using Database Optimization (Indexing) and Client DataSet

Project(7): Code Refactoring Sep’11 to Dec'11 Delphi Developer

Environment: Window7, Delphi 5, Delphi XE,

Description: The Company has the huge amount of the legacy source codes in Delphi5/Delphi7. The company wants to convert the source codes from Delphi5/Delphi7 to Delphi XE.

Responsibilities: Make the Delphi Unit testing and the integration testing. Set up the testing environments.

Have done a unit testing by the method so called “Extreme Programming”(TDD) in Delphi5.0, Delphi7.0 and DelphiXE.

Implement xUnit Test Patterns.

Project(8): Redesigning SQL tables/Queries/stored procedures Jan’10 to Aug'10 Delphi/SQL/Perl Developer

Environment: Window7, Delphi 5, Delphi XE, Cento OS 5.7 MySQL5.5, Perl

Description: Redesign the data access layer/ user interface layer and update the database related objects. Squid Server Optimizations to increase the performance.

Tuned up the Squid Server by testing and changing the directives.

MySql Database optimization by splitting databases and by using indexing.

Developed the Perl modules to measure the WTCP system processing time exactly.

Project(9): Monitoring and alarming the system components. Jan’10 to Feb'10 Delphi Developer

Environment: Window7, Delphi 5, Delphi XE, Cento OS 5.7

Description: Monitor the 32 blade servers in the commercial core network and L2/L4 switches in the network and Display the 3 processes status in the blade servers in the real time. Make the optimizing the client/server systems.

Responsibilities: Make the multithread architectures for the processes.

Developed multithreaded system to update the processor status by using Semphores, Mutex, Conditional Variables.

Developed TCP/IP and Telnet interface by using Delphi and C++

Made MDI (Multiple Document Interface) GUI form.

Developed high-performance client-server by optimizing techniques (SQL Server, Client, Server)

Project(10): Designing the multi-server multi client systems. Jan’10 to Aug'10 Delphi Developer

Environment: WindowXP, Delphi 7 Cento OS 5.4

Description: Instead of the one server and the multi clients system, design the multi server and multi client systems. Change the whole system architecture.

Responsibilities: Make the COM Objects and each COM Objects communicates each other and update data simultaneously. Access the database concurrently. Develop the efficient TCP socket communication between the servers and clients by using Delphi socket / C++ Sockets.

Developed MS Com Architecture and constructed client-server System in Delphi XE

Developed the multi-server multi-client system by using Delphi and C++.

Make UML Diagram for the new system architectures

E & J (Ellen & Joan) Orange County, CA 05/2003 – 12/2009

E-commerce Company for the Digital Image Processing (photography transmission) and photograph selling by using internet.

Project(10): Java Web Service Developer Aug 04 to Dec 09 Java Developer, C#

Environment: Linux, Java, PHP, MySQL, Apache, Tomcat, WebLogic, Hibernate, Spring, JMS(Java Messaging Service), Maven, EJB, Apache

Description: Implementing Restful Web Service; : Order, Delivery and Payment Information for the company daily operation. The basic architecture for the system consists of the Java front end, Java Server and MySQL Server.

Supported Java Persistence for MySQL Database with Hibernate Framework to support automatic and transparent object/relational mapping.

Make Web Page by using PHP and MySQL

Java EE Java Beans Container Construction

Personal Security(Authorization) implementation in Java Beans by Using Aspect Oriented Programming in Spring Framework.

Restful Web Service by using Jetty, Jersey and Jax-Rs.

Unit Testing by using Junit and Arquillian

Restful Web Service implementation with Jersey for the servlet container to identify the web resources.

Deploy @WebService under Tomcat and securing the @WebService under Tomcat.

Make the service side handler for request validation.

Make the SOAP logical handler for the system operation and the company statistics.

Make DOM tree by XML Processing for the front-end browsing operation.

Make Java Native Interface to handle C++ projects in the runtime operation.

Make and modify WSDL files for the SOAP based Restful Service.

Do security and authorization by using javax.security.auth modules.

Database support by using @Entity model.

Make the Persistence Configuration files for the mutually interconnected databases.

Make four layer architectures. (View layer, Application Model layer, Domain Model layer, Infrastructure layer) and modifies EJB for that architecture and makes the domain object.

Make the transaction listener for the company standard requirement to access the customer information.

Java thread synchronizations for the multiple concurrent operation and make ejb bean managed concurrency and timelock for the beans in the container.

Implementing the timer service for the session beans.

MIST Inc., TORONTO, ONTARIO : 09/2002-04/2003

A cash machine development firm. Its main products are Freedom1 and Freedom2 terminal.

Design Real Time Data Display on Point Of Sale portable Wireless Terminal.

FINCAD, SURREY BRITISH COLUMBIA 09/1994 – 09/2002

FinancialCad Corp is a financial software development firm. Its main products are Perfect Hedge and FinancialCAD Developer. Its main product is stock market service provider for investors. The software handles derivatives products such as Equity, Futures, Options, Interest Rate, Credit, and Bonds. It is working with Bloomberg Terminal to import the data.

Project(12): Build Corba System Architecture Sep’94 to March'02 Visual Basic/C++ Developer

Environment: Window2000, MS Visual Studio, Visual C++, Visual Basic, MS Transaction Server

Description: Build CORBA (Common Object Request Broker Architecture) for the financial objects.

Build three tier systems (thin client and fat server). The objects are constructed in the real time and are deposited into the object pool and are reused whenever it is necessary. Construct the distributed object –based systems.

Built a real time CLIENT-SERVER application. Used VISUAL C++ for the Server and VISUAL BASIC for the client.

Handled Com and Dcom problems in Visual Basic.

EDUCATION

Master in Computer Science 1993 PENNSYLVANIA STATE UNIVERSITY: University Park, PA. USA

Projects

Construction of Compilers for C and Pascal Language.

Implemented a distributed file system

I designed the distributed system with only C and Unix without using any commercial tool.

I used only Remote Procedure Call to make the distributed system.

It is the updated version of Amoeba distributed system.

Amoeba is a distributed operating system developed by Andrew S. Tanenbaum and others at the Vrije Universiteit Amsterdam. The aim of the Amoeba project was to build a timesharing system that makes an entire network of computers appear to the user as a single machine.

Implemented UNIX shell commands for the distributed system

BA. Computer Science. 1989 UNIVERSITY OF IOWA: Iowa City, IOWA USA

The below projects are the verification of some Furer’s Algorithms.

He was my thesis adviser.

https://en.wikipedia.org/wiki/F%C3%BCrer's_algorithm

Color of random graphics.

Approximated the minimum degree-spanning tree to within one from the optimal degree

Design of an efficient NC algorithm for finding Hamilton cycles in dense directed graphs.

Fürer's algorithm is an integer multiplication algorithm for quite large integers possessing a very low asymptotic complexity, which can be optimized by using the inverse Ackermann function instead of the iterated logarithm. It was designed in 2007 by the Swiss mathematician Martin Fürer of Pennsylvania State University [1] as an asymptotically faster algorithm (when analysed on a multitape Turing machine) than its predecessor, the Schönhage-Strassen algorithm published in 1971.[2]



Contact this candidate