Job Summary: This position is with our BI Labs team and requires in depth experience with Hadoop technologies (Spark, SOLR, Hbase, Hive, Flume, Kafka, Notebooks) as well as strong understanding of traditional technologies. This position will drive the continued expansion of our data and analytical environments. This role works as both an individual contributor and technical leader within a small team.
DEVELOPMENT SKILLS REQUIRED
Deep experience and understanding of Apache Hadoop and surrounding technologies required; Experience with Spark, Impala, Hive, Flume, Parquet and MapReduce.
Strong understanding of Integration techniques (EAI and ETL); Experience with Tibco and Informatica a plus
Strong understanding of development languages to include: Java, Python, Scala, Shell Scripting
Strong understanding of data modeling, data architecture, and RDBMS; Experience with Teradata and Oracle a plus
Strong understanding of Linux and Linux commands
Strong understanding of data profiling concepts and ability to operationalize analyses into design and development activities
Ability to create data visualizations or track record of working personnel to visualize and tell the story of a complex problem
Understanding and experience with R a plus
Experience with best practices of software development; Version control systems, automated builds, automated code validation, test driven development concepts, automated deployment and continuous integration concepts; Experience with GIT, Jenkins, Sonar, Nexus a plus
Strong knowledge of business intelligence concepts and technologies a plus
ESSENTIAL FUNCTIONS AND PROCESS RESPONSIBILITIES
(Other duties may be assigned as necessary)
Lead the development of detailed specifications:
Communicate with end users, gather requirements, code/configure, maintain, test, and debug modifications to existing applications of basic to high complexity or execute the same in the development of new applications.
Execute the above leveraging approved languages and development tools.
Serve as technical lead on basic to high complexity efforts (projects, enhancements, initiatives, etc.), to include:
Providing work break down structures, cost and resource estimates.
Leading the software development effort (coding/configuration/ maintenance/installation, testing, debugging), managing timelines, and technical documentation.
Identifies, defines, and designs non-functional requirements into the solution design and ensures implementation.
Proactively communicates development status, issues and concerns to management with mitigation recommendations.
Lead research and fact-finding efforts needed to develop or modify basic to high complexity information systems.
Troubleshoot basic to high complexity coding/configuration/
Installation issues encountered in the development or production environments working with software vendors as needed
Create system or application design and can function as a Solution Architect.
Serve as a functional expert for one or more lines of business.
Contributes to improving the efficiency of Software Development Life Cycle best practices and standards
Uses related tools, standards, and training
Is sought out by others for knowledge and expertise in respective area.
Awareness and application of current and emerging industry best practices, standards, frameworks, and patterns. Develops patterns or reusable components across applications.
Highly skilled in at least one approved programming language and platform, and proficient in at least one more and/or System administration of enterprise-class application suite.
Experienced in and able to lead the following phases of the Software Development Life Cycle on any project (feasibility planning, analysis, development, integration, test and implementation)
What is your background?
6-12 years of experience
Bachelor's degree in Computer Science or Information Systems or equivalent experience