Sr. Software Engineer
Medata, Inc.
Irvine, CA
Job Purpose:
We’re looking for a highly motivated and self-directed software engineer to join our team. We operate in an open source environment; therefore, your Linux skills and knowledge of Tomcat is needed. The candidate must possess the necessary skills to design, prototype, develop, unit test, debug, and refactor enterprise web applications. The candidate will work closely with other engineers, QA, analysts, and the deployment team; therefore, strong communication is important.

Job Duties:
Design, document, develop and test existing and new software for internal/external products.
Collaborate with supporting teams for development items and to streamline processes.
Evaluate technology for operational feasibility and performance metrics.
Active involvement in setting and maintaining development standards.
Support Implementation and Account Management teams for external client requests.
Support /mentor junior development staff.
Qualifications

Requirements/Skills/Qualifications:
Bachelor degree in Computer Science or equivalent.
7+ years of experience of software engineer work.
Strong Java/Java EE development experience.
Relational database experience with preference for MariaDB using Galera.
NoSQL knowledge and experience using MongoDB and Map-reduce concepts a plus.
Solid understanding and experience in designing application architecture and implementing OO design patterns, such as MVC and SOA.
Experience and understanding of implementing and integrating with RESTful services. This includes integrating with 3rd party APIs via webservices and the ability to display and persist the data.
Looking for command of the following languages/technologies: java script/JSON, AJAX, HTML5, CSS3, SOAP, frameworks like jquery/datatables, Spring, Hibernate and/or Camel.
Experience using tools such as JUnit, Ant or Maven, and git repo is beneficial.
Bash scripting experience.
Having the ability to create Technical specs, planning skills, and agile development methodologies.
Ability to work independently and as part of a team in an agile development environment.