Sr. Software Developer - Java
Contract to Hire role in St. Louis, MO
• Design, code, test and implement of new applications across delivery platforms according to development standards and processes.
• 6+ years of software development experience with extremely strong skills in Java & Unix.
• Assist production support of applications in PROD and Pre PROD.
• Conduct unit testing and integration testing for functionality.
• Hands-On experience with Code builds and CI/CD processes.
• Analyze a problem and choose the best and most cost-effective solution.
• Strong Experience in scripting languages like Powershell, Bash.
• Hands on experience Configuring and Administering SCM(GIT, SVN), Build (CMake, Make files, Maven), Nexus, CI(Jenkins), CD Automation Tools like Octopus.
• Experience with RDBMS databases and preferably, MS SQL Server databases.
• Experience in NoSQL Databases like MongoDB.
• Experience with developing for Linux environments.
• Experience in Web development with AngularJS or similar UI frameworks & Restful web services
• Extremely strong skills in writing high performance production quality code with focus on logging and exception handling
• Strong object-oriented analysis, design, and programming experience and SOLID principles
• Experience in implementing various design patterns like MVC, Singleton, Factory, Abstract Factory, Business Delegate, Service Locator, Front Controller, Data Access Objects and Data Transfer Objects.
• Experience in Object Oriented Analysis and Design, UML and associated tools such as Rational Rose.
• Experience in Jira, Confluence, Agile/Scrum development methodology
• Extensive exposure on administration, troubleshooting, configuration, deployment and support activities of enterprise applications on WebSphere Application Server and Apache Tomcat.
• Experience in performing code review
• Proven experience in Test Driven Development and Automation working in a Continuous Delivery environment.
• Highly motivated, creative, self-directed, and thrives in small Agile teams in multi-site settings
• Strong computer science fundamentals including a deep understanding of data structures and distributed algorithms
• Ensure proper governance of technical deliveries, including supporting artifacts.
• Be responsible for the functional integrity and proper operation of all supported systems
• Working closely with Development, QA, Product Management, and Production Ops teams to make sure Product Releases on-time with quality.
• Strong Automation, problem-solving skills, and ability to follow through to completion.
• Works well independently and requires little or no supervision. Strong verbal/written communication skills.