Is the go-to expert in one area of the codebase; understands the broad software architecture of the entire system.
Thinks at the enterprise level for reliability, scalability, maintainability, extensibility, portability, and security.
Provides technical advice and weighs in on technical decisions that impact other teams or the company at large. Researches and proposes new technologies. Starts initiatives for SDP review.
Scopes and stages work into well-defined milestones to avoid a monolithic deliverable.
Regularly delivers software on-time and is constantly working to make accurate estimates and deliver on those estimates.
Known for drama-free launches.
Owns the technical testing and performance plan for their projects.
Takes initiative to identify and solve important problems, coordinating with others on cross-cutting technical issues.
Sets direction at the project/service level and consistently influences decision-making at the top level of team.
Identifies and proactively tackles technical debt before it grows into debt that requires significant up-front work to resolve.
Able to provide feedback on projects outside of their core area.
Identifies and proposes strategies around technical problems affecting their team, communicates standards and gets buy-in on solutions.
Makes others better through code pull reviews, thorough documentation, technical guidance, and mentoring or serving as a Tech Lead on a project.
Understands the trade offs between technical, analytical and product needs and leads to solutions that take all of these needs into account.
Your education and experience:
Bachelor's Degree in Computer Science, or related field, from a four-year college or university, or one to two years related experience and/or training; or equivalent combination of education and experience. Relevant industry certification, such as Oracle Java Developer, is preferred.
A minimum of 6 to 9+ years relevant experience in software development, information systems, or equivalent technical environment, including previous experience in the development of highly transactional, mission critical applications in heterogeneous environments/architectures for multi-user systems.
Expert in all aspects of the software development lifecycle: design, functional and technical requirements, coding, debugging, testing, release, and operational support.
Expert level knowledge of agile software development methodologies, Service Oriented Architecture and object-oriented programming methodologies.
Expert in software development best practices, including coding standards, code reviews, source control management, build processes, testing, and operations.
Expert level knowledge of relational and non-relational database management system technologies and tools.
Expert level of experience in reviewing code and providing critical feedback for building secure, stable and scalable applications
Expert level ability to establish the department's technical direction and supervise in its implementation
Expert level proficiency with the following technologies:
Java (6+ years). Versions 1.6 and beyond
Spring or similar MVC framework.
Unix/Linux and one of the many shells
Service oriented designs and technologies.
Web service technologies such as SOAP and REST
SQL and NoSQL
Version control such as Git and code review type tools such as Stash.
Continuous Integration/Delivery toolkits such as Jenkins/Puppet.
Thank you for applying to the Big Data Software Engineer position. Your job application has been routed to the appropriate branch for consideration.
Please make note of your Password, as you will need this if you are selected to move forward in the process.
Your email address will most likely serve as your username.