Java Software Engineer/ Java Software Developer
- San Francisco, CA
• Become an expert in technical aspects of our products
• Analyze high-level requirements and translate these to component level design to be used for architectural prescription, cost/benefit analysis, and concept development
• Identify, define, and communicate design tradeoffs using a structured, detail oriented approach
• Develop creative solutions and write technical design documents.
• Provide work estimates for proposed projects
• Guide other software engineers to design and implement well-integrated products
• Cross-train developers on product features that are implemented
• Perform hands-on software design and development in Java
• Develop and execute unit tests for product components
• Encourage innovation of process and creative development methodologies
• Perform peer code reviews and provide feedback
• Promote high quality, scalability, and timely completion of projects
• Work with geographically distributed teams
- BS or MS in Computer Science or equivalent degree
- 3-6 years of software development experience
• Development experience in an enterprise-class system with multi-tier architecture
• Enthusiastic in solving interesting problems
• Java server-side and UI development experience
• Broad experience with various java development frameworks such as MVC, Struts and Spring
• Broad experience with various J2EE containers such as Weblogic, Tomcat, JBOSS, etc.
• Expert in J2EE APIs including EJBs, Servlets, JMS, JCA, JTA, Persistence/ORM, JSPs, JSTL, web services (SOAP and REST), XSD, JAXB, XSLT and JDBC
• Experience implementing successful distributed, scalable, high-performance multi-threaded server applications
• Understanding of web optimization techniques (server/client side caching, compression, etc.)
• Solid understanding of web data formats (XML, JSON)
• Experience with Design patterns.
• Experience with Hadoop and Hazelcast (or similar data grid technologies)
• Knowledge of the implications of developing for high-availability clustered environments
• SQL development experience.
• Experience with XML related APIs including SAX and DOM parsers and XSLT
• Experience with open source Java technologies including Ant, JUnit, Hudson, Jenkins, Maven.
• Working knowledge of Linux and Windows
• Strong speaking and writing skills
• Comfortable working in a flexible Agile development environment.
NO SPONSORSHIP PROVIDED
USA APPLICANTS ONLY