Jason Li_resume

6
Jason Li SUMMARY: 6 years of extensive experience as a Java/J2EE developer in software design, development and testing of Java/J2EE applications with strong Object Oriented Programming skills in insurance, banking and e-commerce field. Deep understanding and proficient in using Object Oriented Design Patterns: Singleton, Factory, Observer, Iterator, Interceptor, Proxy and also J2EE patterns such as MVC, Interceptor and DAO, Working experience in J2EE technologies such as Spring 4, Hibernate 4, core Java 1.7, JSP, Servlets, JDBC, SOAP, Restful, JMS, Struts2, Spring Transaction, Spring Data and XML. Hands-on experience in creating and consuming Web services using SOAP and RESTful along with testing on SOAP UI Expertise in Core Java concepts such as OOP concepts, Exception Handling, Collections, Multi-Threading along with Java 8 features like Lambda Expressions and Nashorn JS. Hands-on experience in Server side set up and configure in Linux environment such as EC2 of AWS (Amazon Web Service). Good understanding and certified in MongoDB and good knowledge on integrating MongoDB with Java applications Proficient in database design, creation, management of schemas, and writing efficient SQL, PL/SQL and stored procedures on various database servers such as Oracle 12c and MySQL 5. Extensive experience in user interface development using HTML5, CSS3 and JavaScript. Solid experience in creating clean, sharp and responsive web pages using jQuery 2.1 and AJAX. Highly skilled in creating single page application with Angular JS 1.4 using routers, filters, custom directive and services. Familiar with JavaScript back end technology like Node.JS. Experience in major web servers, including Apache Tomcat 8.0, Apache HTTP Server 2.X, JBoss Application Server 7.X. Worked with different IDEs like IntelliJ IDEA 14, Eclipse and development tools like Sublime text3 and build tools like Maven. Good knowledge in using assistant tools in software development such as JUnit 4.11 and TDD. Extensive experience involved in Agile-Scrum Methodology and Waterfall. Good knowledge of Jira, Agile-Scrum, Git and Docker. Self-motivated person work effectively both as an individual contributor as well as a member of the development team in designing, developing and testing software application solutions. Proven ability to work on cross-team environment and comfortable working as full stack developer. Certifications: Java SE 7 Associate Programmer (Oracle Certificate) MongoDB Certificate (M101J: MongoDB for Java Developers) TECHNICAL SKILLS: Programming Languages: \ Databases: \ Java (6/7), C++, JavaScript, R \ MySQL 5.1, Oracle 11g/12c, PostgreSQL, MongoDB \ Python\

Transcript of Jason Li_resume

Page 1: Jason Li_resume

Jason Li SUMMARY:

• 6 years of extensive experience as a Java/J2EE developer in software design, development and testing of Java/J2EE applications with strong Object Oriented Programming skills in insurance, banking and e-commerce field.

• Deep understanding and proficient in using Object Oriented Design Patterns: Singleton, Factory, Observer, Iterator, Interceptor, Proxy and also J2EE patterns such as MVC, Interceptor and DAO,

• Working experience in J2EE technologies such as Spring 4, Hibernate 4, core Java 1.7, JSP, Servlets, JDBC, SOAP, Restful, JMS, Struts2, Spring Transaction, Spring Data and XML.

• Hands-on experience in creating and consuming Web services using SOAP and RESTful along with testing on SOAP UI

• Expertise in Core Java concepts such as OOP concepts, Exception Handling, Collections, Multi-Threading along with Java 8 features like Lambda Expressions and Nashorn JS.

• Hands-on experience in Server side set up and configure in Linux environment such as EC2 of AWS (Amazon Web Service).

• Good understanding and certified in MongoDB and good knowledge on integrating MongoDB with Java applications

• Proficient in database design, creation, management of schemas, and writing efficient SQL, PL/SQL and stored procedures on various database servers such as Oracle 12c and MySQL 5.

• Extensive experience in user interface development using HTML5, CSS3 and JavaScript. • Solid experience in creating clean, sharp and responsive web pages using jQuery 2.1 and

AJAX. • Highly skilled in creating single page application with Angular JS 1.4 using routers, filters,

custom directive and services. • Familiar with JavaScript back end technology like Node.JS. • Experience in major web servers, including Apache Tomcat 8.0, Apache HTTP Server 2.X,

JBoss Application Server 7.X. • Worked with different IDEs like IntelliJ IDEA 14, Eclipse and development tools like

Sublime text3 and build tools like Maven. • Good knowledge in using assistant tools in software development such as JUnit 4.11 and

TDD. • Extensive experience involved in Agile-Scrum Methodology and Waterfall. • Good knowledge of Jira, Agile-Scrum, Git and Docker. • Self-motivated person work effectively both as an individual contributor as well as a member

of the development team in designing, developing and testing software application solutions. Proven ability to work on cross-team environment and comfortable working as full stack developer.

Certifications: • Java SE 7 Associate Programmer (Oracle Certificate) • MongoDB Certificate (M101J: MongoDB for Java Developers)

TECHNICAL SKILLS: Programming Languages: \ Databases: \ Java (6/7), C++, JavaScript, R \ MySQL 5.1, Oracle 11g/12c, PostgreSQL, MongoDB \ Python\

Page 2: Jason Li_resume

IDEs: \ Application Servers: \ Eclipse, IntelliJ IDEA13/14, \ Apache Tomcat 6.0, Apache HTTP Server 2.X, \ WebStorm 4/6/7/8/9\ JBoss Server 7.X Frameworks: \ Operating Systems: \ Struts2, Spring 3/4\ Windows, Linux, Mac\ Web Services: \ Build Tools: \ SOAP, RESTful, \ Maven\ Version Control Tools: \ Design Methodologies: \ Git, SVN, CVS\ Agile-Scrum, Waterfall, Jira\ Front-end Technologies: \ Java/J2EE Technologies: \ HTML 5, CSS3, Bootstrap, AJAX, \ Java J2EE, Servlet, JSP, Web Services, \ jQuery 2.1, JavaScript, Angular JS \ JDBC 4.1, XML, Hibernate 3/4, \ 1.4, Node.JS\ Spring 3/4, JMS 1.1, JPA, JSON, Log4j\ Spring Transaction, Spring Data, Spring Security\ Unit Testing/Debug Tools: \ JUnit 4.11, TDD\ PROFESSIONAL EXPERIENCE: State Farm Insurance, Summit, NJ Feb 2015 – Till Date Role: Java Developer Project: Pro IS Client description: The State Farm Group of Insurance Companies is a leading auto insurance company with 24-hour, in-person and online services throughout the United States, to suggest customers with competitive and affordable insurance solutions. Project Scope: The project is to provide auto insurance service, which supports existing customers to manage their accounts, to check claims information, profile information, insurance policy as well as billing history, all in an user friendly management panel after signing in. Besides, it also helps new customers to quote insurance policies which best suits their requirement, and to sign up for an account. It also has other modules like claim system, payments and notifications. Responsibilities:

• Followed Agile-Scrum application development methodology. Involved in Sprint Planning meetings, Backlog Refinement meetings, Stand Up meetings, Sprint Review and Retrospective meetings.

• Implemented Spring Framework 4 and Spring MVC in the application. Developed code for obtaining bean references in spring framework using Dependency Injection (DI) or Inversion of Control (IOC).

• Using Hibernate 4 and JPA to developed Object Relational (O/R) mapping and Data Access Objects (DAO) interface to fetch data.

• Involved in the development of project back-end logic layer by using most of the Core Java features such as Collection Framework, Interfaces, Multi-Threading and Exception Handling programming.

Page 3: Jason Li_resume

• Use optimistic concurrent control to deal with the multi-threading situation in database reading and writing.

• Set up RESTful Web Service in notification module in server side using Express framework in Node.JS.

• Responsible for writing complex and efficient SQL and HQL queries to read and write customers’ information on Oracle 12c database server.

• Performed installation, configuration and deployment using JBoss (Wildfly 8.1) along with Session Bean and JMS configuration.

• Implemented web services using RESTful architecture and used Angular JS to consume JSON between user interfaces and server.

• Implemented web services using SOAP and WSDL to interact with various banking services for highly secured payment function.

• Developed front-end user interface using JSP, HTML 5, JavaScript, CSS3. Used AJAX calls to the server for asynchronous data populating to the client side.

• Designed and developed utility class that consumed the messages from the Java Message Queue, and used Java Mail API for generating emails to be sent to customers.

• Used Eclipse as IDE, Git as a version control system and for code management, and Maven for automatic build process.

• Use Jira to track the bug fix and the progress, manage the project workflow and integrate with Git.

• Created unit tests using JUnit 4.11 framework in test driven development approach. • Involved in bug fixing that was raised by the testing teams in the application during the

Integration Testing phase. Environment: Java 7, Spring 4, Spring MVC, Hibernate 4, JPA, JSP, HTML 5, CSS3, JavaScript, jQuery 2.0, Angular JS 1.4, AJAX, RESTful, SOAP, Java Mail API, Git, Maven, JUnit 4.11, MongoDB 3, Mysql 5, Oracle 12c, Eclipse 4.5, IntelliJ IDEA 14, Agile-Scrum, Jira Bloomingdales, New York, NY Feb 2014 – Jan 2015 Role: Java Programmer Project: Brown Bag Client Description: Bloomingdale's is an American chain of upscale department stores owned by Macy’s Inc., providing lengthy list of designer handbags, shoes, clothing, jewelry and makeup. Project Scope: The project provides administrators some functionality such as customer account management, warehouse goods management, returning handling. Also there are different promotions and discounts applied on different items, which are supported by this application. And it also provides normal customers’ features like purchasing, returning, payment and so on. Responsibilities

• Followed Agile-Scrum Methodology in software development. • Enhanced certain modules of web portal using Spring Framework 4. And developed web and

service layer components using Spring MVC. • Verified sign in information, and performed authorization in a single sign in interface. • Used JPA/ Hibernate 4 to communicate with data layer and databases.

Page 4: Jason Li_resume

• Developed various database interaction objects by implementing the DAO interface and used ORM as model component.

• Use optimistic concurrent control to deal with the multi-threading situation in database reading and writing.

• Developed database schema and populating data using SQL and HQL statements, PL/ SQL functions, stored procedures, triggers and bulk uploads.

• Use MongoDB to store the buyers’ reviews on each product so as to enhance the performance of reading the data from database.

• Developed user interfaces to interact with server using JSP, JSP tag libraries, Spring tag libraries, JavaScript, and jQuery 2.0 to simplify the complexities of the application.

• Implemented RESTful web services and created REST based controllers to handle incoming requests and output responses. Use JSON to contain data.

• Use Oracle 11g as product database and Mysql 5 as testing database. • Implemented message communication using JMS 1.1 to get the status of the services. • Participated in requirements gathering and created design prototypes using storyboards. • Assisted in turning user story into detailed functional requirements in different modules.

Prepared technical documentation and reports. Environment: Java 7, Spring 4, Spring MVC, Hibernate 4, JPA, XML, SQL, HQL, PL/SQL, JSP, jQuery 2.0, RESTful, JSON, JMS 1.1, Oracle 11g, Mysql 5, MongoDB 3.X, Git, Maven, Eclipse, IntelliJ IDEA 13, Agile-Srum Alibaba Group, Guangzhou, China Aug 2012 – June 2013 Role: Java Web Application Programmer Project: Electronic Payment Client Description: Alibaba Group is a Chinese e-commerce company that provides c2c, b2c and b2b sales services via web portals. It also provides electronic payment services, a shopping search engine and data-centric cloud computing services. Project Scope: The purpose of this project is to provide more attractive, sharp online bill payment facility to users. This project consists of two modules, including payment interface and function for users, and management interface and function including report generator for administrators. Responsibilities:

• Involved in Agile-Scum Methodology. Required document study and implement the class using Java.

• Developed JSP programs using Java 7. And assisted in database design and schema planning using HQL and Hibernate 3 in Oracle 11g.

• Implemented the application using Struts2 MVC, and designed and coded the pages using JSP, HTML 5, CSS3 and JavaScript.

• Developed an own realm for Apache Tomcat 6.0 for authenticating the users. • Prepared test plans and test reviews. Handled validations and took care of error handling.

Environment: Java 7, Servlet, JSP, Hibernate 3, HTML 5, CSS3, JavaScript, Struts2, Oracle 11g, Apache Tomcat 6.0, Eclipse, Agile-Scrum

Page 5: Jason Li_resume

China Construction Bank, Guangzhou, China Aug 2011 – July 2012 Role: Java Programmer Project: Online Bill Payment Client Description: One of the "big four" banks in the People's Republic of China. In 2015 CCB was the 5th largest bank in the world by market capitalization and 6th largest company in the world. Project Scope: The purpose of this project is to provide online bill payment facility to users. This project consists of two modules, including payment function for users, and management function and report generation function for administrators. Responsibilities:

• Involved in Agile-Scum Methodology. Acquired user requirements for System study. And prepared low level and high-level design documents.

• Developed Servlet programs using Java 7. And assisted in database design and schema planning using SQL and JDBC 4.0 in MySQL 5.1.

• Implemented the application using Struts2 MVC, and designed and coded the pages using JSP, HTML 5, CSS3 and JavaScript.

• Developed an own realm for Apache Tomcat 6.0 for authenticating the users. And displayed different web pages to different users via Tiles.

• Prepared test plans and test reviews. Handled validations and took care of error handling. Environment: Java 7, Servlet, JSP, JDBC 4.0, HTML 5, CSS3, JQuery, Struts2, MySQL 5.1, Apache Tomcat 6.0, Eclipse, Waterfall Tencent, Shenzhen, China Jan 2010 – July 2011 Role: Java Web Application Developer Project: QQ Mall Client Description: Tencent is one of the largest Internet companies in the world. Its offerings include the well-known (in China) instant messenger Tencent QQ, famous mobile chat service WeChat and one of the largest web portals in China, QQ.com. Project Scope: The project is to develop Java EE applications for online shopping cart with multiple product categories. It requires backend development as well as front-end web development. It is focused on enterprise application using Spring, Hibernate and Oracle database. . Responsibilities:

• Developed user interface using HTML 5, CSS3 and JQuery for the presentation tier. And developed JSP pages and client side validation by JavaScript tags and custom tags.

• Developed Controller Servlet to handle all the request and Oracle 11g database access. • Involved in integration with Spring Framework 3 and developing ORM using Hibernate 3. • Exposed to installation and configuration with Apache Tomcat 7.0. • Deployed the application, supported and maintained regular functioning on server.

Page 6: Jason Li_resume

Environment: Java 6, Servlet, JSP, HTML 5, CSS3, Bootstrap, JQuery, Spring Framework 3, Hibernate 3, Apache Tomcat 7.0, Oracle 11g, Eclipse, Agile-Scrum EDUCATION:

• MS | Computer Science • BS | Electrical and Electronics Engineering