Mark Horton
Mark Horton
mark@
+1 (678) 999-4639
Professional Experience
IBM
Global Technology Services Division
April 2011 – Present
Atlanta, Georgia, USA • Goiania, Goias, Brazil
Senior Software Engineer
Key accomplishments:
Designed a new web based architecture for IBM's worldwide Security Operations Center (SOC). The SOC monitors and manages tens of thousands of security devices, such as firewalls, for IBM's external customers in over 100 countries.
This architecture utilized the Spring Framework, Hibernate, JPA, MySQL, and Tomcat on the backend, while ExtJS was used on the frontend. JSON based REST controllers were used to handle the browser/server interaction.
The main Spring Framework components utilized: MVC, Security, JPA, JDBC Templates, and Scheduling.
Created numerous web applications to help the SOC streamline their tasks. These applications saved thousands of man hours annually compared to previous procedures.
Designed and implemented a concurrent device communication API used in several internal projects. This API dramatically improved the speed and accuracy at which security devices could be queried, updated, and audited.
Created an experimental distributed data analysis system. This system uses lock-free queues for each cpu core. Each queue has a single producer and single consumer which eliminates contention. This allows a high level of parallel processing across the cluster. Inter-node communication is handled via non-blocking IO channels so that a large number of nodes can communicate efficiently.
Improved the team's software development process by introducing Agile methodologies. Tools such as Jira, Confluence, and Git were also introduced.
Under contract with Intalio
February 2008 – April 2011
Palo Alto, California, USA • Goiania, Goias, Brazil
Senior Software Engineer
Key accomplishments:
Developed a non-blocking socket communication service for Intalio Cloud. This service was designed to handle a high volume of messages while also providing fast response times. It used non-blocking socket IO channels to efficiently handle over 10,000 simultaneous connections.
This service operated in either encrypted SSL or plain text mode, both of which were implemented using Java NIO.
Integrated Tibco's General Interface into Intalio's Designer application. This involved updating the General Interface JavaScript source code and creating our own set of Ajax enabled drag and drop widgets.
Implemented automated provisioning tools to help integrate Intalio Cloud with Amazon Web Services.
Created several WSDL based components for Intalio's BPMN product.
Implemented a private key password encryption module using the Java Cryptography APIs.
Lancope
May 2007 – December 2007
Atlanta, Georgia, USA
Senior Software Engineer
Key accomplishments:
Developed Swing based components for Lancope's security analysis product. My primary task was to create a chart panel using the Java 2D API.
This chart panel displayed a real-time graph of data flowing from the server. The user could interact with the charts by making notations and marking important points. This helped the user correlate critical security events.
Nostromo
April 2006 – May 2007
Goiania, Goias, Brazil
Senior Software Engineer
Key accomplishments:
Created a Swing based trading application for use with Dukascopy's JForex API.
Implemented proprietary trading algorithms for automated currency trading.
Under contract with Sprint/Nextel
March 2003 – April 2006
Atlanta, Georgia, USA
Senior Software Engineer
Key accomplishments:
Implemented a high performance multithreaded middleware server in Java. This server was used to provision telco devices for Sprint’s 20+ million wireless customers. It accepted data via TCP/IP socket connection, XML-RPC, JSP, and SOAP interfaces.
Created telco device software emulators used for development and testing.
Provided feedback and review of technical specifications and APIs.
Created internal documentation for end users of the IT provisioning software.
Under contract with GuardedNet
September 2002 – March 2003
Atlanta, Georgia, USA
Software Engineer
Key accomplishments:
Created a multithreaded client-server security event collection module in Java.
Implemented SSL communication modules in C++ and Java.
Created a set of JNI wrappers to execute PERL from within Java.
CBeyond
October 2001 – September 2002
Atlanta, Georgia, USA
Software Engineer
Key accomplishments:
Designed and implemented a voice over IP call detail analysis system in Java using an Oracle RDBMS. This multithreaded system processed data concurrently which allowed it to scale well across cpu cores.
The analysis was very important to capacity planning and telco trunk group analysis. It allowed us to see, for example, peak usage at any given moment. It generated important summary statistics such as how many calls were placed between any two cities.
This system also generated Tivoli Netcool alarms, in near real-time, when errors or failures occurred during a call.
Created web based tools used for telco trunk group analysis and reporting.
MindSpring/Earthlink
October 1996 – October 2001
Atlanta, Georgia, USA
Software Developer
Key accomplishments:
Designed and implemented a multithreaded data processing and analysis system using Java and MySQL. This system computed statistics from a large amount of data utilizing a multi-core Linux server. These calculations analyzed customer usage patterns and were critical to providing improved services to our customers.
This system replaced proprietary software saving the company over $500,000 per year in licensing costs, while also providing faster query response times.
Designed and implemented Earthlink's external customer account management and new customer sign-up web pages. The sign-up pages accounted for 25% of all new customers brought into the company.
Created a very successful internal web based ticketing system using PHP and MySQL.
Key Skills
High performance concurrent and parallel programming
Asynchronous and non-blocking IO programming
Object oriented design and implementation
Agile software development methodologies
Web application development
Application performance tuning
Virtualization and cloud computing
TCP/IP network programming
Client-server programming
Network security and cryptographic related programming
Key Technologies
Spring Framework
Tomcat, Jetty, JBoss
JQuery, AngularJS, ExtJS
IntelliJ, Eclipse
Git, Svn, CVS
Ant, Maven, Gradle
Jenkins, Hudson, JUnit
XML, JSON, HTML, CSS
MySQL, PostgreSQL, Oracle
Hibernate, JPA, JDBC
Cassandra, MongoDB
Amazon Web Services, VMware
RHEL, Ubuntu, Solaris
JDK 8 Streams and Lambdas
NIO Buffers, Channels, Selectors
Swing, AWT
Primary Languages
Java (15 years) • SQL (12 years) • JavaScript (6 years) • Ruby (3 years) • PHP (5 years) • Perl (5 years) • Python (2 years) • C/C++ (2 years) • Unix/Linux shell scripting (10 years)
Education
Loyola University
New Orleans, Louisiana, USA
Bachelor of Arts • Mass Communications
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.