Position: Java Developer (at least 1 year of experience)
Company: SimplePin
Experience required: 1y
English level: upper

The Java Developer is directly responsible for the design, development, and management of Java-based applications. 

The Java Developer is responsible for, but not limited to,
Duties, responsibilities and tasks

•	Evolve and enhance our core applications
•	Participate in the analysis, elaboration, and estimation of customer requirements and specifications
•	Design, develop, and deploy new production-quality features and functionality that meet customer requirements
•	Create and maintain technical documentation
•	Maintain and improve existing code, including monitoring for backend errors, reporting errors to internal bug tracking system
•	Educate, guide, and interact with our customers’ technical staff throughout their development and integration efforts
•	Collaborate with application support to analyze, troubleshoot, reproduce, and resolve production issues reported by customers
•	Work with other team members on release planning and deployment activities
•	Innovate and improve development and implementation processes and tools by advocating technologies and designs that promote efficiency, reliability, and reusability
•	Be proactive, facilitate knowledge sharing, and continually improve our activities
•	Perform design and code reviews, assist with refactoring, and provide guidance and mentoring to other developers
•	Responsible for day to day tasks of assigned by Product Owners, Project manager
•	Provide technical solutions to Project/Product Managers and company Solution Architect
•	Ensure all personal deliverables are done with highest level of quality
•	Ensure that the goals and objectives are accomplished within defined timeframes and allocated budgets
•	Analyze business requirements, provide the feedback to stakeholders
•	Plan, implement and support continuous integration processes
•	Perform technical investigation of customer support issues and provide resolution
•	Track time and deliver time-sheets on weekly basis
•	Perform technical research and present innovative solutions which contribute to company success
•	Other tasks as assigned


Skills, competencies and qualifications

•	1+ years’ software engineering and IT experience
•	Experience using software best practices like Test-Driven Development (TDD) and Continuous Integration (CI)
•	Strong debugging and analytical skills
•	Knowledge of relational databases and SQL; and cryptography and security
•	Worked as part of Scrum teams or similar iterative Agile development methodologies
•	Bachelor’s or Master’s degree in software engineering or computer science
•	Practiced continuous improvement and promoted knowledge sharing
•	Strong organizational skills, capable of managing assigned tasks and meeting deadlines
•	Excellent interpersonal, communication, collaboration, and writing skills
•	Ability to conduct technological analyses and research
•	Excellent communication skills
•	In-depth knowledge of web systems architecture, design and development
•	Experience with project management, including AGILE, SCRUM and Waterfall
•	Proactive problem solver
•	Multi-tasking capabilities with ability to adjust to paced environment
•	Works under minimal supervision, with general guidance from technical management
•	Attention to details
•	Comport in spoken and written English is a plus


Technical skills

•	Experience in Core Java, J2EE, and Java frameworks such as Spring, and Hibernate
•	Experience with MVC frameworks, OOD, Design Patterns, Testing frameworks
•	Programming expertise in XML technologies and Web services
•	Database design and development with practical knowledge of PostgreSQL, MySQL, Oracle
•	Extensive experience in SQL, PL/SQL, store procedures
•	Proficiency in Unix Operation Systems with experience in Linux / Bash scripting
•	Working knowledge of TCP/IP, networking, security, SSL, SSH
•	Familiarity with public Cloud providers (AWS, GCE, Azure)
•	Knowledge of Apache Wickets framework
•	Experience with test automation tools such as Selenium
•	Experience with Apache and NGINX configuration
•	Knowledge of Atlassian products, including JIRA, Confluence and Service desk.
•	Understanding of SOAP, experience with RESTful, JQuery, JSON other APIs
•	Experience in distributed applications a plus.
•	Experience in HTML5 technologies, Angular, Bootstrap, CSS, Ajax and JavaScript/jQuery.
•	Practical knowledge of development and build tools such as Jenkins, GIT, Subversion, Maven, Ant, Gradle etc.)
•	Practical knowledge of Test-Driven Development (TDD) and Continuous Integration (CI)
•	Experience with financial math is a plus
•	Understanding of Linux containers and orchestrators (Docker, Kubernetes) is a plus