AppDev Workstream – DevOps Team - DevOps Engineer SDE
Lansing, MI
Job Description:
Profile & Description
We are embarking on a major restructuring of a system that conducts over 4 billion dollars of business per year. We are also building Web base UI using RIA techniques and REST/JSON. This DevOps group is responsible to provide the tools and support necessary to help our core development teams manage, promote, release this software. They are also responsible for working with our infrastructure group to plan operational support including collaborative processes for promotion of build artifacts into secure environments.
Our environment includes a wide mix of J2EE, Oracle, WebLogic, VMWare, message buses and Openstack. We are moving towards a hosting model closer to that scripted build out and release onto operational pre-hardened OS images with specified capacity provided by our operations group. Many of our build, release and artifact management processes must be upgraded to work in this new mode. We cannot transition everything all at once so charting a path with incremental upgrades will be critical.
The DevOps engineer ensures that your developers are never doing repetitive tasks, and that the infrastructure is kept up to date as the stack evolves. As processes change and the company grows, the DevOps engineer automates as much as possible to accelerate work. Because of DevOps, developers can focus on their core work so you can deliver products earlier and more reliably.”
We strongly believe in script based provisioning where Dev ops starts with docker style scripts building up the rest of the application hosting stack from the pre-hardened virts provided by operations. We don’t want any GUI in this process because we want to be able to fully script complete new stack provisioning through the go live process.
While our core development is done in Java the DevOps position will require scripting in a wide variety of languages like Python, docker scripts, puppet, etc. This is an evolving stack so you need to have a love of learning new tools, new languages and radical new ways of thinking about the intersection between Development and operations. You need to be passionate about webscale technologies as applied to scale growing businesses.
Over the next few years we plan to deploy a wider variety of web scale technologies such as Kafka, Mecmcache, shared nothing architectures, advanced caching of materialized views, etc. Each of these will have it’s own challenges getting ready for production hosting.
DevOps also provides a gatekeeper function so software that does not provide appropriate health checks and integration in logging and monitoring can be stopped before it is released. We obviously want this process to be as automated as feasible.
Skills Include
Required:
• Docker provisioning scripts
• Redhat V7 hardening
• Redhat V7 J2EE Hardening
• Managing a Automated integration test environment with automated escalation when builds are broken.
• Managing code quality tool reporting infrastructure.
• Manage Repository and Directory layouts. Working with Devteams to optimize these.
• Promoting build artifacts into secure production silo’s
• Working with Ops to deliver easy ability for them to deploy new instances of system without engaging dev teams or dev ops.
• Working with Dev teams to deliver touch zero change binary deployments. Continuous Integration tools, Jenkins Administration, Jenkins Docker as well as Jenkins HA skills.
• Resolve complex problems with Merging, Branching and Configuration Management of SCM system
• 2+ years of experience in Maven and Ant.
• Ability to debug in a Linux environment using CentOS, and working knowledge of security principles – server security, file systems and access control
• Database migration scripting
• Database dice & slice scripting
• Database strategy to deploy breaking changes with minimum disruption.
• Conversant and able to use at least 4 programming languages.
• Written parser for files of complexity equal or greater than EDI 834 in at least 2 different languages.
• Object-oriented and service-oriented design concepts, including knowledge of data transfer objects and associated design patterns.
• Excellent communication skills with the ability to solicit and formalize requirements and work with end users/customers.
• Ability to work in a semi-structured environment where requirements and priorities are dynamic.
• Experience with agile development methodology.
• Understanding Business Process Re-Engineering (BPR). Analysis and redesign of workflows in an organization to optimize business processes as it related delivering software faster and at lower cost.
Highly Desirable:
• Securing web API using Open ID or other SSO technologies.
• 4+ years’ experience in SQL and Oracle. Understands and can explain when transactional semantics will limit scalability in large scale distributed systems.
• Knowledge of UML.
• Solid Java development skills with 7+ years J2EE experience.
• Experience in Insurance Domain
• Experience in Claims processing Domain
• Experience in Dental Claims processing Domain
• Experience in Inventory Control or Audit Domains
• Experience in HIPAA and PCI security Domain
• Experience with Webscale technologies such as Kafka, Memcache, Riak, AWS, Shared nothing architectures.
• Experience building and deploying software onto AWS or Openstack using Chef, Docker or similar technologies.
• When using libraries such as J2EE Soap need to understand and verbalize how this works through the entire stack and how it could be implemented from the ground up.
• Experience writing complex general purpose algorithms such as databases, machine learning engines, parsers, etc.
• Writes code both at work and for fun. Has created or contributed to open source projects.
• Experience with Test Driven Design (TDD) methodology.
• JavaServer Faces (JSF) technology knowledge and experience.
• Experience with Web Logic Portal technology.
• Good understanding and ability to explain ROI tradeoff between System API integration tests and Unit tests and how they would make such a decision in a budget constrained environment.
• Good understanding of junit testing and continuous integration environment.
• Experience with Java Message Service (JMS) and Message Driven Bean (MDB) development is preferred.
• Working knowledge of developing and deploying applications in Weblogic portal environment.
• Understanding of Service Oriented Architecture and experience working with web services.
• RDBMS schema refactoring experience with experience releasing breaking changes to prod with minimal downtime.
• US Citizenship is preferred.
• Experience in the insurance industry, specifically with the health care industry.
• Recent experience with Oracle Weblogic 10.3.x or greater.
• Bachelor of Science in Computer Science, Information Systems, Engineering or a related field or comparable work experience.
Minimum Physical Expectations:
• Physical activity that often requires extensive time working on a computer.
• Physical activity may require lifting under 25 lbs.
• Must be able to sit, stand, walk, bend, push, and pull with or without assistive devices
• Must have control of fine motor movements and the ability to grasp small objects
• Physical activity that sometimes requires travel
• Specific vision abilities required include close vision, depth perception, and the ability to adjust and focus.
• Must hear and speak well enough to conduct business over the telephone or face to face (in English) for long periods of time.
We are embarking on a major restructuring of a system that conducts over 4 billion dollars of business per year. We are also building Web base UI using RIA techniques and REST/JSON. This DevOps group is responsible to provide the tools and support necessary to help our core development teams manage, promote, release this software. They are also responsible for working with our infrastructure group to plan operational support including collaborative processes for promotion of build artifacts into secure environments.
Our environment includes a wide mix of J2EE, Oracle, WebLogic, VMWare, message buses and Openstack. We are moving towards a hosting model closer to that scripted build out and release onto operational pre-hardened OS images with specified capacity provided by our operations group. Many of our build, release and artifact management processes must be upgraded to work in this new mode. We cannot transition everything all at once so charting a path with incremental upgrades will be critical.
The DevOps engineer ensures that your developers are never doing repetitive tasks, and that the infrastructure is kept up to date as the stack evolves. As processes change and the company grows, the DevOps engineer automates as much as possible to accelerate work. Because of DevOps, developers can focus on their core work so you can deliver products earlier and more reliably.”
We strongly believe in script based provisioning where Dev ops starts with docker style scripts building up the rest of the application hosting stack from the pre-hardened virts provided by operations. We don’t want any GUI in this process because we want to be able to fully script complete new stack provisioning through the go live process.
While our core development is done in Java the DevOps position will require scripting in a wide variety of languages like Python, docker scripts, puppet, etc. This is an evolving stack so you need to have a love of learning new tools, new languages and radical new ways of thinking about the intersection between Development and operations. You need to be passionate about webscale technologies as applied to scale growing businesses.
Over the next few years we plan to deploy a wider variety of web scale technologies such as Kafka, Mecmcache, shared nothing architectures, advanced caching of materialized views, etc. Each of these will have it’s own challenges getting ready for production hosting.
DevOps also provides a gatekeeper function so software that does not provide appropriate health checks and integration in logging and monitoring can be stopped before it is released. We obviously want this process to be as automated as feasible.
Skills Include
Required:
• Docker provisioning scripts
• Redhat V7 hardening
• Redhat V7 J2EE Hardening
• Managing a Automated integration test environment with automated escalation when builds are broken.
• Managing code quality tool reporting infrastructure.
• Manage Repository and Directory layouts. Working with Devteams to optimize these.
• Promoting build artifacts into secure production silo’s
• Working with Ops to deliver easy ability for them to deploy new instances of system without engaging dev teams or dev ops.
• Working with Dev teams to deliver touch zero change binary deployments. Continuous Integration tools, Jenkins Administration, Jenkins Docker as well as Jenkins HA skills.
• Resolve complex problems with Merging, Branching and Configuration Management of SCM system
• 2+ years of experience in Maven and Ant.
• Ability to debug in a Linux environment using CentOS, and working knowledge of security principles – server security, file systems and access control
• Database migration scripting
• Database dice & slice scripting
• Database strategy to deploy breaking changes with minimum disruption.
• Conversant and able to use at least 4 programming languages.
• Written parser for files of complexity equal or greater than EDI 834 in at least 2 different languages.
• Object-oriented and service-oriented design concepts, including knowledge of data transfer objects and associated design patterns.
• Excellent communication skills with the ability to solicit and formalize requirements and work with end users/customers.
• Ability to work in a semi-structured environment where requirements and priorities are dynamic.
• Experience with agile development methodology.
• Understanding Business Process Re-Engineering (BPR). Analysis and redesign of workflows in an organization to optimize business processes as it related delivering software faster and at lower cost.
Highly Desirable:
• Securing web API using Open ID or other SSO technologies.
• 4+ years’ experience in SQL and Oracle. Understands and can explain when transactional semantics will limit scalability in large scale distributed systems.
• Knowledge of UML.
• Solid Java development skills with 7+ years J2EE experience.
• Experience in Insurance Domain
• Experience in Claims processing Domain
• Experience in Dental Claims processing Domain
• Experience in Inventory Control or Audit Domains
• Experience in HIPAA and PCI security Domain
• Experience with Webscale technologies such as Kafka, Memcache, Riak, AWS, Shared nothing architectures.
• Experience building and deploying software onto AWS or Openstack using Chef, Docker or similar technologies.
• When using libraries such as J2EE Soap need to understand and verbalize how this works through the entire stack and how it could be implemented from the ground up.
• Experience writing complex general purpose algorithms such as databases, machine learning engines, parsers, etc.
• Writes code both at work and for fun. Has created or contributed to open source projects.
• Experience with Test Driven Design (TDD) methodology.
• JavaServer Faces (JSF) technology knowledge and experience.
• Experience with Web Logic Portal technology.
• Good understanding and ability to explain ROI tradeoff between System API integration tests and Unit tests and how they would make such a decision in a budget constrained environment.
• Good understanding of junit testing and continuous integration environment.
• Experience with Java Message Service (JMS) and Message Driven Bean (MDB) development is preferred.
• Working knowledge of developing and deploying applications in Weblogic portal environment.
• Understanding of Service Oriented Architecture and experience working with web services.
• RDBMS schema refactoring experience with experience releasing breaking changes to prod with minimal downtime.
• US Citizenship is preferred.
• Experience in the insurance industry, specifically with the health care industry.
• Recent experience with Oracle Weblogic 10.3.x or greater.
• Bachelor of Science in Computer Science, Information Systems, Engineering or a related field or comparable work experience.
Minimum Physical Expectations:
• Physical activity that often requires extensive time working on a computer.
• Physical activity may require lifting under 25 lbs.
• Must be able to sit, stand, walk, bend, push, and pull with or without assistive devices
• Must have control of fine motor movements and the ability to grasp small objects
• Physical activity that sometimes requires travel
• Specific vision abilities required include close vision, depth perception, and the ability to adjust and focus.
• Must hear and speak well enough to conduct business over the telephone or face to face (in English) for long periods of time.