Software Engineer

Location: Mountain View, ca

Ref#: 1648.6343

posted: 8-Jun-2018

Responsible for analyzing, designing, debugging and/or modifying software; or evaluating, developing, modifying and coding software programs to support programming needs. Maintain and enhance existing code with focus on implementation. Collaborate with and assist team of engineers in writing functional, design and user interface specifications. Follow software lifecycle process when developing software. Help identify solutions to problems encountered in software cycle. Play a key role within each phase of the software development lifecycle. Create medium to large sized highly scalable client and server-side applications from start to finish, including the following: regular interaction with product and member services teams, understanding the requirements, prototyping and documentation, system design, frontend MVC development, interaction with a Java containers (preferably Web Logic & Tomcat), web services, various Java EE specifications (messaging, persistence, batch), development builds, application deployments, integration/enterprise testing, continuous delivery (preferably Jenkins) & the support of applications within a production environment. Work in complex technology environments across many disciplines of information technology including: developing services that run on clustered environments, supporting alert and fulfillment platforms servicing members using Service Oriented Architecture (SOA), Micro services architecture, J2EE service platforms on Data Center or Cloud hosted platforms, Optimum application design for maximum performance on both web and backend, Operating Systems - Mac and Linux, Performance Management & Capacity Planning, Monitoring & Metrics dashboards; & providing interfaces for legacy & front end systems that can lookup member information (including alerts and identity data) using Application Program Interfaces (APIs), Messaging Software and Interoperability Techniques and Standards. Responsible for designing & architecting web based systems in either in-house datacenters or third-party hosted platforms, data integration with external vendors, data transformation & delivery systems & enterprise integration systems. Provide Platform & Skill Set Expertise in the following: Web Development: Spring or similar MVC frameworks including Struts; HTML, CSS, JavaScript, JQuery, Apache Tomcat to enhance member portal & to display customized alert details from different data vendors; QA Testing utilizing unit test case development/Junit; Software/Application Development using Java EE, EJB, SOAP/REST Web Services, Web Logic Application Server 12c, Oracle, Linux; Database Development utilizing Oracle; Design Skills & Tools including Model-View-Controller, Object Oriented Design, Scalable solutions and Source Code Control with Git or SVN. Write front-end MVC Java Code & middle-tier Java code; ensure that every coding path is unit tested & nearly bug free. Use appropriate logging solutions (Log4j, Sumo, Splunk) to assist in troubleshooting production issues. Develop applications that include appropriate logging solutions using frameworks like Log4j/Commons, SumoLogic and debug tools to troubleshoot issues in production systems. Participate in full integration testing, data integration/development, enterprise information integration &/or ETL. Rapidly address issues & fix defects discovered during deployment. Develop high quality applications & mentor other developers, providing technical direction on application coding/development & utilizing Java EE Technologies including JSP/Servlets, EJB3, JMS, JDBC, JMX, JMS, JPA; JDK 1.7 or above, Web Services (SOAP and REST): XML, XSL, CSS, Spring Framework and Java i18n. Utilize development methodologies including SDLC, Scrum, and/or Agile, test-driven development, & tools used to develop Java code such as JUnit/Cactus, Eclipse, IntelliJ or NetBeans, and Git/Subversion for sprint planning, increasing code coverage & testing for regression. Employer will accept Bachelor’s degree in Computer Science, Engineering or related technical field and 5 years experience in job offered or computer related occupation. Alternatively, will accept Master’s degree in Computer Science, Engineering or related technical field and 2 years experience in job offered or computer related occupation. Position requires: 1. two (2) years of experience developing applications that include appropriate logging solutions using frameworks like Log4j/Commons, SumoLogic, using debug tools to troubleshoot issues in production systems; 2. two (2) years of experience using development tools such as JUnit/Cactus, writing functional tests, code coverage tools, continuous integration and delivery systems like Jenkins; 3. two (2) years of experience writing Java code using tools like Eclipse, NetBeans or IntelliJ, and Git/Subversion; 4. two (2) years of experience developing high quality applications; 5. two (2) years of experience across many disciplines of information technology including: Service Oriented Architecture (SOA), Optimum Web Application design for maximum performance, Operating Systems: Mac and Linux, Performance Management and Capacity Planning, Application Program Interfaces (APIs), Messaging Software and Interoperability Techniques and Standards; 6. three (3) years of hands on experience using the following technologies: J2EE Specification APIs including EJB3, JPA, JMS, JDBC, Web Services (SOAP/REST), SOA and Microservices, Spring Framework, XML, XSL, Struts, JDK 1.7 or above, JavaScript and CSS; 7. three (3) years of experience in design and architecting web based systems in either in-house datacenters or third-party hosted platforms, data integration with external vendors, data transformation and delivery systems and enterprise integration systems; 8. three (3) years of experience using different development methodologies including SDLC, Scrum, and/or Agile, and test-driven development; 9. three (3) years of experience in mentoring other developers and providing technical direction on application development; 10. three (3) years of experience with gathering and documenting technical requirements and specifications; 11. three (3) years of experience working in complex technology environments.