Senior Software Engineer Resume
PROFESSIONAL EXPERIENCE:
Confidential, Minneapolis, MN
Senior Software Engineer
Environment: Java 1.8, IntelliJ IDEA, Eclipse, Git, Confidential, MySQL, Microsoft SQL, Visual Studio, VersionONE, ServiceNow.
- Added hooks to the Git code commit process to enforce VersionONE task numbers to be included so code changes can be traced back to the requirement.
- Wrote software to support the product ordering system.
- Fixed outdated Git, IntelliJ, and Hybris setup for the developers' local environment so we can run, test and debug the application properly.
- Fixed bugs as support team triage lead to comply with 12 - 48 hour SLA.
- Created training videos and documents for the support team in India.
Federal Reserve Bank Minneapolis, MN
Senior Software Engineer
Environment: Agile, Java 1.8, Spring, Jersey, Wink, EasyMock, WebSphere, Eclipse Neon, SVN, Tortoise, Maven, Nexus, Confidential, Toad, JIRA, Jenkins, PMD
- Fixed bugs in the ACH transfer reporting software reported by QA.
- Performed JUnit code coverage completion using Jenkins reports and Cobertura.
- Refactored the entire Risk-processing module to use an updated common jar.
- Created an automated message generator for the existing Log4j system.
Confidential, Eagan, MN
Senior Software Engineer
Environment: Java 1.7, C#, SOAP, TIBCO Business Studio, ClearCase, ClearCase Remote Client, ActiveMatrix
- Developed credit card processing software to capture, encrypt and mask credit card data from MagTek card scanners.
- Proposed, designed and created automated capture and parsing software to create reports of the currently deployed versions of SOA services in DEV, TEST, and PROD environments.
- Configured and supported deployments to the ActiveMatrix server nodes.
- Utilized SoapUI to verify my newly created and updated web services.
- Created a new version of driver's license parsing via magnetic stripe data capture.
- Converted and updated C# code into Java for optical passport scanning.
- Created a prototype Enterprise Logging system using JMXAlerts.
Confidential, Minneapolis, MN
Application Architect
Environment: Agile, Java 1.7, Confidential JDeveloper, WebLogic Server, Confidential Database 11g, SVN, Tortoise, Maven
- Determined the most efficient way to convert PL/SQL complex types into Java business objects with performance tuned data structures.
- Assisted in the conversion of the Confidential back office retail software suite which was acquired in the purchase of Retek. The previous application was written in Java with a Swing UI. I assisted in porting it to ADF and JSF.
- I located and repaired a design flaw which had been causing several memory leaks. I reported the problem to the Confidential developer community so that my fix could be applied across multiple projects resulting in greater overall system stability.
- Proposed and created a prototype hashing strategy to more efficiently query and cache data for the retail system.
Confidential, Minneapolis, MN
Senior Software Engineer
Environment: Agile, Java 1.7, Eclipse, Tomcat7, MSSQL, SVN, Tortoise
- Designed and coded the Cisco ACMI system to update and record agent events and status.
- Wrote software to import phonetic phrases for agent and client voice analysis.
- Interviewed and the trained new junior employees.
- Streamlined the new software engineer development environment setup procedure and automated the deployment process so new changes can be deployed to virtual machines more rapidly and consistently.
- Clarified the business rules for phrase management to determine which phrases should be added or updated via manager import.
- Created REST web services and coordinated with the UI team to design the appropriate JSON structures.
- Discovered and replaced inefficient algorithms in the code base.
Confidential, MN
Lead Software Engineer
Environment: Java 1.6, IntelliJ, JIRA, Tomcat, MSSQL, JPA, Hibernate, Pentaho ETL, Maven, Nexus
- Upgraded the Internet Broadcasting WebScan product to be compatible with the new version of Google's ad-server, DFP Premium, formerly known as DoubleClick for Publishers.
- Created a one-off program to automatically update the wild card search capabilities of the legacy advertisement data thereby making thousands of legacy ads usable by the ad trafficking team.
- Utilized Google's web services to ingest statistics regarding the number of successfully delivered internet ads. The application I designed and coded automatically fetches the statistics on a nightly schedule. Then, via UI, SOAP, or REST web service, the data can be fetched with a dynamic query generator allowing the user to sort by date range, ad type, site, and channel.
- Researched Pentaho ETL strategies and delivered suggestions to management.
Confidential, WI
Software Engineer
Environment: Agile, Java 1.6, MyEclipse, JBoss, MySQL, Swing
- Wrote the software for point of sale terminals used by cashiers at Menards stores.
- Designed and wrote credit card processing software with a Swing UI.
- Worked with representatives of Discover and Visa to determine the business logic for cash-back transactions and partial authorizations.
Confidential, Eden Prairie, MN
Senior Software Engineer
Environment: Java 1.6, MyEclipse, Tomcat 6, MySQL
- Wrote web application software to support physicians' grossing and reporting cancer screening biopsy samples. These reports include important dynamically generated diagrams to aid in the communication of the diagnosis between physicians and patients.
- Updated the application to automate faxing of results to client laboratories.
- Designed and coded credit card processing functionality with the Authorize.NET framework to allow client labs to process payments without the need to store the sensitive customer information on the server. Utilizing this customer information management (CIM) functionality of the AuthNet platform allows for automated authorization, payment, and refunds of the patient credit card at the various stages of testing.
- Created software to generate clinical pathology reports which allow labs and clinics to review their overall cancer testing results given a time span.
- Assisted other developers with complex iReports XML/SQL bugs.
Confidential, Saint Paul, MN
Senior Software Engineer
Environment: Agile, Java 1.6, Eclipse, Apache, Tomcat, MySQL, Pentaho, Spoon, ETL
- Designed and wrote web application software to help universities and hospitals generate more donations from former patients, alumni and boosters.
- Worked with clients to import data via Pentaho ETL to provide the means to target alumni that are most likely to donate.
- Designed and coded functionality allowing users to locate potential alumni donors based not only on the likelihood of donating, but on geographical proximity as well. This allows the gift officers of the universities to quickly reallocate their time and set up impromptu meeting with alumni nearby.
- Gathered requirements for new server hardware and submitted proposals for several possible configurations with widely varying processing capabilities and price points. Management agreed with my suggestions and upon receiving shipment, I installed the server cluster at the co-location at USI.
- Modified the open-source Pentaho ETL suite to accommodate our needs for file and data validation.
- Merged our client information with the SalesForce data and created an automatic daily merge of said data to help the sales team more accurately monitor existing users and target potential clients.
- Created and updated JUnit tests as well as automated testing via Selenium to test and monitor the web application.
- Managed the Tivoli monitoring and notification system.
Confidential, Minneapolis, MN
Software Engineer
Environment: Java 1.5, XML, Swing, Rational Application Developer 7, Agile
- Developed a Swing application for the internal monitoring officers of currency exchange rates for international money transfers.
- Integrated the manual editing of currency exchange rates with the automatic daily and on-demand rate updates from Reuters and/or Bloomberg. This ability to update the exchange rates quickly and easily is expected to generate revenues in excess of $600,000 annually.
- Introduced field validation functionality that will prevent the users from manually entering new rate calculations that deviate too far from the original rate. However, in times of extraordinary currency volatility the user has the ability to override this validation to keep the exchange rate current with the market between the scheduled updates from Reuters and/or Bloomberg. This manual override of the rate validation generates a notification so that an errant override can be quickly caught by other internal officers and fixed.
Confidential, Minneapolis, MN
Software Engineer
Environment: Java 1.6, XML, Eclipse, WebLogic, Atova XMLSpy, Altova StyleVision, Altova Mapforce, XSL, XSLT, JAXB
- Designed and developed an application for the automatic creation and distribution of data. The clients receive different types of information based on their level of access. They also want the data in several different layouts and file types. Furthermore, they take delivery of the information via email, fax, or RDM. The database interaction was done using a in-house persistence tool similar to JDO. The data was then formatted into XML for ease of custom transformation via XSLT.
- Created XSLT files to transform outgoing data in custom formats for 278 bank and casino clients.
- Developed a means to keep a file history so that previously sent data can be redistributed to the client on demand.
Confidential, Eagan, MN
Software Engineer
Environment: Java 1.4, J2EE, Swing, AWT, XML, RAD7, WebSphere, WSAD, RMI, Microsoft Visual C++ 2005, ArgoUML 0.24, Rational ClearCase, Agile.
- Developed and supported the Crew Solver application. This was a desktop Java application with a Swing UI. I worked with a very small team on this 24/7 system that facilitates the continuous process of rescheduling pilots and flight attendants.
- Fixed several pieces of the application that were outdated due to the fact that much of it was written prior to Java 1.3.
- Proposed, designed, and created a Swing utility to increase developer productivity by automating the process of switching between different configurations of the application during research, development, and testing.
- Mentored an intern programmer and helped him create various testing tools and changes to the rules engine. Also, I showed him how the system works and how we respond to outages in case he would ever need to carry the support pager.