Business, Code, JavaEE, SOA, Technical, WebServices

Current Technology Research

Languages – used to solve problems that work with user interaction and machine development.

Kotlin for Java and Android.

Swift for IOS and Mac.
Cloud Technologies and Platforms – Infrastructure, functions and platforms that provide integrated solutions for systems and applications high availability and deployments.

Amazon Web Services (AWS).

Google Firebase

Understanding Domain Driven Design – is an approach to software development for complex needs by connecting the implementation to an evolving model.

http://en.wikipedia.org/wiki/Domain-driven_design

http://dddsample.sourceforge.net/

http://www.domainlanguage.com/


Reactive Programming
– is a programming paradigm oriented around data flows and the propagation of change.

http://en.wikipedia.org/wiki/Reactive_programming

http://news.dice.com/2014/01/13/how-is-reactive-different-from-procedural-programming/

https://www.youtube.com/watch?v=jIsxcXBWthI


Concurrency in Java
– is a form of computing in which several computations are executing during overlapping time periods –concurrently – instead of sequentially (one completing before the next starts). This is a property of a system – this may be an individual program, a computer, or a network – and there is a separate execution point or “thread of control” for each computation (“process”).

http://en.wikipedia.org/wiki/Concurrent_programming

http://en.wikipedia.org/wiki/Concurrency_in_java

http://tutorials.jenkov.com/java-concurrency/index.html

Hexagonal Architecture – Allow an application to equally be driven by users, programs, automated test or batch scripts, and to be developed and tested in isolation from its eventual run-time devices and databases.

As events arrive from the outside world at a port, a technology-specific adapter converts it into a usable procedure call or message and passes it to the application. The application is blissfully ignorant of the nature of the input device. When the application has something to send out, it sends it out through a port to an adapter, which creates the appropriate signals needed by the receiving technology (human or automated). The application has a semantically sound interaction with the adapters on all sides of it, without actually knowing the nature of the things on the other side of the adapters.

http://alistair.cockburn.us/Hexagonal+architecture

Software Company

http://asp-software.org/www/misv_resources/marketing-articles/how-to-make-a-million-dollars-in-software/

 

Advertisements
Business, WebServices

Java EE Senior Web Developer Profile

DAVID KING, SENIOR JAVA WEB DEVELOPER  enterprise.saas@gmail.com
WEB SERVICES PROJECTS
RESTFUL WEB SERVICE DATA PROVIDER

Property Inspections enhancement to existing applications created the need for a go-between data provider. A new RestFul Web Service was created to serve as this data provider for multiple internal applications. Provided technical implementation estimates for programming tasks. Designed Java interfaces for service API, models objects, enums. Worked with and gave guidance to developer for persistence API Java interface and test module settings and configured Spring Framework XML files for Spring MVC, Spring Security and Bean Wiring.

SOAP/MTOM WEB SERVICES FOR REPORTS UPLOAD
To aid workflow requirements for business processes related to Property Inspections, a new SOAP/MTOM Web Service was created to allow multiple vendors to upload completed reports. Researched XML Schema requirements for MTOM/XOP element creation and validated XML Schema and WSDL for WS-I Compliance. Implemented Web Services module for SOAP/MTOM using Spring Web Services. Migrated WS-I Basic Security Profile to use Digest Authentication using Spring Security. Provided Development Support and Problem Resolution for vendor testing.

WEB APPLICATIONS

ONLINE UNIVERSITY WEB DIRECTORY
Radford University had an existing web directory based upon flat files and SAS templates which a maintenance issue, also the interface was not easy to use providing an unpleasant experience for its users. Mr. King was tasked with writing a completely new web directory front-end using existing data stored in an Oracle database. The requirements for the directory included providing search capabilities to the general public and made available to faculty/staff and students of the university. It was built using Java EE Technologies including User Interface Design, Middle Tier Application Container Deployment, Database SME Interactions and Unit/User Acceptance Testing.

THIRD PARTY ON-LINE FORUMS AND KNOWLEDGE BASE SUITE UPGRADE
Standalone Forums and Knowledge Base applications were outdated and a better solution was proposed to merge two independent forums and a single knowledge base into a new integrated forums and knowledge base suite. Wrote code to integrate 3rd Party Forums and Knowledge Base suite into single sign-on process for existing portal. Coded JUnit tests to verify new functionality. Deployed application to Clustered Web Logic Application Server. Worked with vendor technical support and internal team to resolve performance issues.

PROJECT SKILLS  – Used Across All Projects
•  Attend, facilitate and contribute to application design meetings and requirements refinement.
•  Write technical specifications to convert business requirements to a technical plan of  execution.
•  Code class hierarchies using Object-Oriented Design and technical problem solving skills.
•  Develop unit tests to validate technical implementation, and research and fix application bugs and defects.

EMPLOYERS
TEKPARTNERS AT ROYAL CARIBBEAN CRUISE LINES, FL – 50/hr 8/2011 – 2/2012
CITIZENS PROPERTY INSURANCE CORPORATION, FL – 75k 11/2008 – 6/2011
AT&T, VA- 61 k 10/2006 – 7/2008
RADFORD UNIVERSITY, VA-  41k 10/2001 – 10/2006

EDUCATION
Bachelor of Science in Information Technology, Magna Cum Laude GPA 3.80 graduated 07/2005 from
American Inter-Continental University, Hoffman Estates, IL.

Business

Task Filter Using The Strategy Pattern

I have an application that deals with a type Task, there are many ways to retrieve a task such as, getting all tasks, lookup a single task by its id, get all tasks that belong to a specific user and have a status of complete. As one may already notice, the combinations can be many. Too simplify, I will not allow so many variations; in addition, I will not code the familiar Dao interface containing the methods findById, findAll, findByUserIdAndCompleteStatus. Instead I will extract these methods into a Filter Spec interface as shown.

Strategy Pattern

Gof Strategy Pattern

The Context in this instance is the ApplicationService which has a Strategy and receives the Strategy during construction as follows:

ApplicationService service = new ApplicationService(new IdFilter(new IdFilterSpec(“1001”)));

public class ApplicationService {

private Filter filter;

public ApplicationService(Filter filter) {   this.filter = filter;  }

public List<Item> filterContext() {
return filter.filter();
}

}

The filter receives a specification that matches the concrete filter for its data in, the return for all
concrete filters is always a List of type Item.  In the example shown, the id given “1001”, will reach
the data layer where a list will be populated with the type Item that matches the the Item with an
id of “1001”.

Business

Changing Careers?

There are many people who are happy working day to day in their profession. Some are blue-collar, green-collar or white-collar, others may be business owners. Whether the work week is forty hours or more, if one if satisfied and content, then the work is easy even at stressful moments.

We all know someone (or it may be you) who says, “I can’t wait for Friday to come so I can get out of this office!”

I think job satisfaction can be found, at times it requires a career change. Changing careers require planning and commitment, consider the following questions on your quest for work fulfillment.

  1. What careers are good candidates for me given my knowledge, experience and goals?
  2. What is required of me to transition (emotionally, financially, etc..) into a new career?
  3. Do I have an idea of what the day to day work is really like?
  4. What excites me about a prospective new opportunity?
  5. What is not so exciting?
  6. If money were not a consideration, would I think this is a great career choice?
  7. Given a long term view, is this really what I want to do?

Think about it, when one has a good work-life balance, life is golden. This is possible for everyone!