Senior Software Engineer Resume
SUMMARY:
- Up to this moment I have more than 10 years of expertise in the information technologies (IT) field, database design, development and implementation of Web applications in the Java EE platform.
- Particularly interested in concurrent, fault - tolerant, side-effects free, distributed, scalable architectures as well as migration/refactoring and iter-op/integration. Also devoted to the selection, analysis and integration of tools and libraries/frameworks focused on the development of enterprise applications, specially related with processes management.
TECHNICAL SKILLS:
Programming Languages/Platforms: Erlang, Java, JavaScript (starting Rust).
Frameworks and Libraries: rebar, Maven, Gradle, npm, jspm, Grunt, Gulp, Bower, Vert.x, Spring Framework, Spring MVC, Spring Batch, Spring Data, Spring Boot, Spring Security, Apache Shiro, Quartz Scheduler, Struts/Struts2, Logback, SLF4J, Log4j/Log4j2, Guava, Apache Commons-*, Jersey (JAX-RS), RESTEasy, jOOQ, JPA/Hibernate, JDOM, XStream, Jackson, Gson, jUnit, Thymeleaf, JSP/JSTL, HTML/HTML5, AngularJS, Yeoman/Yo, Karma, Jasmine, Mocha, Chai, Sinon, jQuery/jQuery UI, Bootstrap, Foundation, UIKit.
Databases: Couchbase, MongoDB, IBM DB2, Sybase ASE, MySQL, PostgreSQL, H2, HyperSQL (starting Riak, CouchDB and Redis).
IDEs and Tools: IntelliJ IDEA, Eclipse (and Eclipse-based: IBM RAD, SpringTool Suite), Toad Studio (multi-database), Embarcadero DBArtisan, Embarcadero RapidSQL, Oracle SQL Developer, Visual Paradigm for UML, Git, Subversion (SVN), Concurrent Versions System (CVS), IBM ClearCase, cURL, PuTTY, WinSCP.
Application Servers: Oracle WebLogic, IBM WebSphere, TomEE, Tomcat, WildFly (former JBoss AS).
Operating systems: UN*X/Linux, Windows.
PROFESSIONAL EXPERIENCE:
Confidential
Senior Software Engineer
Responsibilities:
- Understanding client's requirements and their feasibility.
- Interaction with client's business to discuss, project and propose development scenarios - in the form of User Stories-.
- Design and implementation of back-end platform, front-end architecture and security model.
- Development and implementation of UI components, layout and messaging system in order to effectively communicate/glue them as the application grows in complexity.
- Application security testing and quality standards.
- Implementation and development of unit tests (jUnit and Jasmine).
- Debugging and troubleshooting.
- Analysis, code reviews and unit test documentation.
Confidential
Senior Software Engineer
Responsibilities:
- Abstract: Design and implementation of the Enterprise Services Platform (ESP) within a Service Oriented Architecture (SOA) by applying the principles of reusable software components which can be integrated together to support multiple business needs in a consistent manner by exposing the Message Model which would include the definition of request and response messages schema and/or exceptions.
- The platform itself will be the basis for future projects based on the same architecture, reducing costs of software implementation by promoting the reuse of services for business needs and shorten time-to-market of product delivery to customers. The platform is developed entirely in the Java EE platform using Maven, Spring Framework, Hibernate/JPA, XStream, Gson, Log4j; deployed on an Oracle WebLogic cluster and a few instances of Oracle RDBMS system.
Confidential
Senior Software Engineer
Responsibilities:
- Design and implementation of specifications and work packages for security vulnerability patches for on-going project in the Java EE platform; additionally, participating in the implementation for penetration testing for some vulnerabilities - XSRF, XSS (and variants), SQL Injection-. Configuration and execution of HP Fortify software to check source code for further/remaining vulnerabilities. MF-Process Data Services is deployed on Oracle WebLogic, utilizes simultaneously a Sybase ASE and IBM DB2 databases, a WebMethods integration server, and an IBM MQ server for asynchronous messaging/communication.
Confidential
Senior Software Engineer
Responsibilities:
- Design and implementation of specifications and work packages for security vulnerability patches for the Java EE platform. Configuration and execution of HP Fortify software and plug-ins to check source code - security vulnerability assessment. MF-Portfolio Values is deployed via UNIX shell scripts that pull the source code from IBM ClearCase, build it and deploy it on an Oracle WebLogic box; databases in use are Sybase ASE and IBM DB2. It is mainly a Web application compounded of many functional modules and two Web modules; relevant technologies are Spring Framework, Apache Struts, Hibernate, ILOG JRules, JSP/JSTL and JasperReports.
Confidential
Senior Software Engineer
Responsibilities:
- Understanding client's requirements and their feasibility.
- Interaction with Client Technical team to finalize development scenarios, integration issues and non-functional requirements.
- Design and implementation of security threat model/prevention strategy as part of the application architecture and design - not as a feature.
- Gathered requirements and developed specifications.
- Application security testing and quality standards.
- Development of patches (work packages) for reported security vulnerabilities.
- Environment ("dev", "uat") configuration and deployment support.
- Implementation and development of unit tests (jUnit).
- Debugging and troubleshooting.
- Analysis, code reviews and unit test documentation (managed and stored on a Microsoft SharePoint server).
Confidential
Senior Software Engineer
Responsibilities:
- Enterprise Java EE application composed of a Java Messaging System listeners/synchronizers module - developed with the Spring Framework and Enterprise Java Beans (MDBs); an enhanced inter-op module for integration with legacy systems (through REST Web Services); and an AJAX-powered Web module developed with Spring MVC, Jackson and jQuery UI (for monitoring and logging purposes). Involved also in the implementation and design of databases. Deployment on IBM AIX and Sybase ASE as database. Project scaffolding/bootstrapping with Maven.
Confidential
Architect / Software Engineer
Responsibilities:
- Understanding requirements and their feasibility.
- Interaction with Client Technical team to finalize development scenarios, integration issues and non-functional requirements.
- Gathered requirements, analyzed use-cases and developed specifications.
- Development of user interfaces with Spring MVC, jQuery/jQuery UI, CSS and Apache Struts2 (both under the MVC pattern).
- Configuration and development of messaging queues for balancing, interoperability and asynchronous processing.
- Development of Premium Calculation module for annual, monthly and weekly processing of sinisters.
- Development of persistence and service layers for the processing (retrieve, update/modification and delete) of data/information.
- Implementation and development of unit tests with jUnit.
- Debugging and troubleshooting.
- Also involved in creating various kinds of design and development documents as well as test plans.
Confidential
Analyst / Software Engineer
Responsibilities:
- Understanding requirements and their feasibility.
- Interaction with Client Technical team to finalize development scenarios, integration issues and non-functional requirements.
- Gathered requirements, analyzed use-cases and developed specifications.
- Migration of persistence layer (for this specific module) to Hibernate ORM (using mostly the DAO pattern).
- Development of user interface with Apache Struts, jQuery, CSS and Direct Web Remoting (DWR).
Confidential
Software Engineer
Responsibilities:
- Design, development and implementation of a new system for transferring information between pension systems — basically granting interoperability by sending/receiving XML information in a decentralized, asynchronous way via WebSphere MQ; likewise interacting with an enterprise transactional IBM DB2 cluster.
- Analysis of future use of Web Services (REST-like). Also responsible for structure and end-to-end development of such system under the Java EE platform and Spring Framework. As a pilot project we implemented an application to handle security, calculation of interior/exterior payments, retirements, disabled beneficiaries, shares, etcetera.
Confidential
Software Engineer
Responsibilities:
- Responsible for structure, implementation and development of the overall architecture for an Intranet-based home application — there should be a shared platform for projects in future. The system was developed under the Java EE platform, Spring Framework, Apache Struts, Sybase ASE as database engine and IBM WebSphere as application server.
- Release and deployment management for applications and infrastructure; monitoring capacity and support for IBM WebSphere as well as supporting the migration from SharePoint and Microsoft SQL Server to Alfresco ECM and MySQL. Also Involved in the design and implementation of Alfresco workflows and BPM designs with the Activiti engine.
Confidential
Software Developer
Responsibilities:
- Preparation and implementation of application specific changes development as well as providing help with design and support for Inter-Op FrameWork (IoFW) under Java EE platform, Spring Framework (among other libraries) and WebSphere MQ for asynchronous messaging — describing tasks that need to be performed in order to manage a queue manager and its connections with other queue managers; uses of WebSphere MQ as part of the communications infrastructure to connect several application environments such as Lotus Notes, external services in the World Wide Web as well as enterprise transactions and database systems. Also supporting IBM WebSphere deployments.
Confidential
Software Developer
Responsibilities:
- Planning, preparation and implementation of application specific changes development — presentation layer and back-end (persistence and service layers) under Java Enterprise Edition with Apache Struts, Spring Framework and Direct Web Remoting (DWR). Sybase ASE as database engine and unit tests done with jUnit. Also supporting release/deployment management of IBM WebSphere application server.
