JPC Partners is looking for a Senior Java AWS Software Engineer. Roles & Responsibilities
Architect, design, code, unit test, fully implement and deliver application features with highest quality and security to prevent unauthorized access /use
Create modular, scalable, testable, tested, performant sub systems which interface via well- defined end points using software engineering best practices such as unit testing, design patterns etc.
Implement, test, maintain and support software, based on technical design specifications
Prepare technical design specifications based on functional requirements and analysis documents
Review functional requirements, analysis and design documents and provide feedback
Assist with triage and resolution of issues from customers and internal users
Work independently to plan, prioritize, and complete high complex critical priority work assignments, as a member of a project team
Participate in and/or lead architecture and code reviews
Promote Continuous Improvement by identifying process in efficiencies and quality improvements
Lead or participate in other projects or duties as assigned
Provide guidance to and lead/mentor junior team members
Will work under minimal supervision
Investigate software development tools.
Requirements:
10+ years of experience in Java and AWS cloud
Skilled in working within a team-oriented, collaborative environment, and able to contribute to technical, design and retrospective dialogs
Proven analytical and problem-solving skills, passionate about learning and applying new technologies
Must possess strong interpersonal, organizational, presentation and facilitation skills.
Experience using testing tools for REST and SOAP service, such as SOAP UI, Postman, cURL and others for API and Web Services Testing.
Hands on experience working with common AWS services such as S3, EC2, CloudWatch, SNS, SQS, DynamoDB etc.
Basic knowledge of RDBMS databases and SQL such as SQL Server or Oracle etc.
AWS certification preferred.
Knowledge of Microservices (good to have).
Able to identify root cause of system issues and determine short- and long-term resolutions
Thorough understanding of design patterns, functional and object-oriented programming, DI / AOP frameworks, asynchronous and event-driven design, well versed in testing methodologies, experience writing unit and functional tests
Advanced full stack coding skills in Java, JavaScript, JSON / XML, Java Spring, REST, Web Services design and construction.
Familiarity with web-based application development technologies is required.
Understanding of databases - relational and NoSQL, experience with Postgres SQL, SQL Server, writing advanced SQL, T-SQL or similar, query optimization
Experience with persistence frameworks such as iBatis/myBatis
Proven ability to learn new technologies.
Experience with Java performance analysis and tuning is desired.
Experience with iterative, incremental software development processes
Competent with designing and writing automated tests.
Experience with modern CICD delivery approaches
Experience with cloud deployments and enabling technologies is preferred.
Ability to quickly analyze, organize, and abstract large amounts of information and to make decisions based on this analysis.
Awareness of business issues as they impact overall project efforts.
Ability to influence and negotiate when faced with opposing views or resistance.
Ability to apply professional concepts, experience, and company objectives to perform an in-depth analysis of situations or data to resolve complex issues in creative ways.
Ability to work without supervision. Wide latitude for independent decision making.
Ability to listen and understand information and communicate the same.