Title: Java Developer
Location: Atlanta, GA
CRM Provider is a highly configurable RESTful service middleware application that integrates disparate backend systems including Siebel CRM, Oracle UCM, and Clarify to provide standard, secure RESTful endpoints. As a member of the CRM (Client Relationship Management) Service Tools and Technologies development team within the Global Enterprise Technologies & Services organization, you will design and develop features for the CRM Provider middleware application. You'll work on a fast paced and growing team to build the best solutions available to provide both clients and associates a stellar service experience.
Detailed Description and Job Requirements
As a member of the CRMP team, you will apply intermediate to advanced knowledge of software architecture to perform tasks associated with designing, developing, debugging, deploying or trouble shooting software solutions according to provided design specifications. Build enhancements within an existing software architecture and occasionally suggest improvements to the design & architecture.
An ideal candidate is an expert Java developer with 5-9 years of experience in delivering complex enterprise projects using Web, Database & Web services technologies. Responsibilities include:
• Design, Develop and support of high-performance, robust APIs to support high-volume transactions
• Have a solid understanding of software development roles, processes and procedures in the context of Web and Database development
• Take responsibility for Design, Execution, Deployment and Quality of the deliveries
• Have experience with Agile development methodology, Scrum
• Contribute actively with Designing, Coding, Code reviews, testing and integrating the work
• Interface with multiple local and remote business and technical teams
• Have a keen eye for identifying improvement opportunities and implement the same
• A Bachelor's degree in Computer Science, Computer Engineering or equivalent
• 5 to 9 Years of experience in building Web based enterprise software systems
• Adaptability and willingness to learn new tools/languages is a big plus.
Comfortable with more than one programming language and have a firm grasp of fundamentals of web/internet technologies. He/She has solid experience in building enterprise systems using
• Java and enterprise Java with Open source tools, Java 8 or later
• Expert implementation skills with frameworks like Spring, Spring MVC, Spring JPA
• Experience in Test driven development and writing unit tests using TestNG or JUnit
• Writing build/deploy scripts using Maven, Gradle & Jenkins
• Ability to create/modify database schemas, writing SQL queries in Oracle and/or other RDBMS, and familiarity with ORM tools like Hibernate
• Comfortable with Linux/Unix environment and shell scripting
• Experience with at least one common scripting language - Python, Perl, Ruby, etc.
• Experience writing and consuming RESTful and SOAP-based web services
• Experience with using Messaging systems (RabbitMQ/AMQP, JMS)
• Familiar with the techniques and knowledge required for troubleshooting full-stack systems from end-to-end
• Optimizing performance in front-end, middle-tier and database layers
• Experience in the following a plus: Java 9 or later, Apache Kafka, Docker, Elasticsearch, Redis or similar, GraphQL, Apache Camel, JVM languages (Scala, Groovy, etc.), Node.js, React, Mongo or other NoSQL DB
Duties and tasks are varied and complex needing independent judgment. Fully competent in own area of expertise. May need to mentor lower level personnel.
Must have good sense of humor, be open to working in an agile environment with the possibility of rapidly changing priorities from product management. Must be a self-starter, eager learner, and expect to either hit the ground running or learn on your own.