As an Application Engineer you will be responsible for general health, growth, and troubleshooting of the Java stack. Assist developers in technical design and troubleshooting from a Java standpoint. The application engineer will liaise with third parties as needed to support technical integrations, troubleshooting, and upgrades. The application engineer will work closely with the DevOps team to define and maintain the stack and the software/hardware needed to support the application. They will make recommendations for changes and updates- proactively planning for growth, and aid in developing the project plans needed to make these changes.
Responsible for application server configuration and management in development and production environments
Responsible for application performance monitoring and remediation (load testing and profiling) to identify problematic code prior to production release
Look at initiatives to learn, select, consume industry best practices including learning new tool sets, software architectures, and data architectures that help further the application stack
Builds prototypes and conceptual implementations as part of a larger effort to explore, hypothesize and clarify technology direction through proof of concept
Document application/systems dependencies
Interface with SysOps team to identify and remediate systems and networking issues
Coordinate with DevOps team to research, promote, and own tooling to enhance developer quality and productivity
Takes ownership of tasks when others do not. Helps drive the completion of all work tasks
Regularly review application stack and included libraries to ensure they are up to date
Performs root cause analysis and technology evaluation including working with vendors/companies to help troubleshoot
Serve as an on-call expert for production issue triage
Provide support and expertise to development team on feature development requiring systems interfaces
Strong collaboration skills
Thorough knowledge of JBoss application stack
Ability to clearly communicate, both written and oral, objectives, assumptions, alternatives and solutions to both technical and non-technical audiences.
Practices professionalism and integrity in all actions: Demonstrated ability to foster concepts of teamwork, cooperation, self- control, and flexibility to get the work done.
Strong team-building and influencing skills, with a track record of creating focus and momentum in diverse organization. Must be able to execute a vision.
BS in Computer Science, Engineering, or related subject.
Experience in JSON, XML, RESTFUL APIs, Ant/Maven, GIT, Java,JBoss
Understanding of TDD, Agile, Scrum, Devops practices
Experience creating REST web services with relational databases and ORM data mapping.
Load and performance testing experience including application profiling and optimization
Experience successfully delivering applications using agile methods and collaborating with nontechnical team members including quality assurance, business analysts and project managers.
2-5 years of experience in real-world Java development with increasing levels of responsibility
2 or more years experience with technical design and development, Spring or similar framework, and web-application development.
Experience with Unix and Shell scripting languages
Experience with Agile/Scrum methodologies