The Software Developer is responsible for the design, development and release of our organization's web-based applications. Duties include application development and systems integration, spanning front-end, middle tier, and data access components. The company is in the midst of a significant program to revise its core web-based business services delivery automation systems, migrating to a contemporary, open source technology stack. This is a hands-on technical role, providing the opportunity for distributed systems integration and development.
JOB REQUIREMENTS AND QUALIFICATIONS:
Education: Bachelor of Science Degree in Computer Science, Engineering, or related field
Minimum 3+ years and strong software engineering background
Technical Skills Required:
Experience with two of the following Database Technologies – Oracle, MYSQL, PostgreSQL, Mongo, Hadoop, MSSQL
Excellent problem solving and analytical skills.
Independence, self-managed, and motivated.
Skilled with Object-Oriented and Functional Programming.
Superior oral and technical writing communication skills.
Understanding of Web Services technologies.
Understanding of Agile practices such as test driven development and continuous integration.
Experience contributing to the design and architecture of a large project.
Act in a technical leadership capacity: mentoring junior engineers, new team members, and applying technical expertise to challenging
programming and design problems.
Ability and desire to thrive in a proactive, high-pressure, client-services, environment.
Able to effectively communicate across teams and roles.
Demonstrable ability to deliver projects on time, with high quality, and within budget.
Provide progress reports of the development effort to management.
Manage individual contribution or group effort to tight deadlines.
Analyze user requirements and existing business process.
Translate business requirements into technical specifications.
Must take initiative, be a decisive decision-maker and show confidence in decisions made.
Must be able to see tasks through to completion without significant guidance.
Must be a team player who works well with technical and non-technical resources.
Must be able to provide documentation on work.
Demonstrate commitment to high professional ethical standards and a diverse workplace
Ability to troubleshoot issues in complex, distributed, multi-tier architectures.
Provide product improvement feedback and suggestions.
Coordinate use of development team's time.
Providing technical oversight and assessment of application and system development projects to ensure technical integrity and compliance
within design requirements.
Providing hands-on contributions to architecture, design, and code development for critical components of the company’s next-generation
Resolve development issues and troubleshoot code errors.
Maintain suitable knowledge of threats, risk assignment, remediation strategies, security tools, testing techniques, and security research.
Experience building scalable applications using Scala, Akka, and Play
Experience with front end technologies for the web such as: Dart, Angular, Ember and jQuery
Experience in relational databases design and maintenance (e.g. MySQL, Oracle, PostgreSQL)
Experience in NoSQL database design, implementation, and maintenance (MongoDB, Hadoop)
Experience with Eclipse (Scala IDE, STS)
Amazon Web Services (AWS)
Understanding of various web server configurations and setup: Apache Tomcat, Apache HTTP Server
Application security experience or training.
Data visualization coding experience
Data modeling and statistical analysis.