Sr. Software Engineer/Tech Lead

  • Columbus, OH
  • Posted 24 days ago | Updated 2 days ago

Overview

On Site
Full Time

Skills

Test-driven development
Behavior-driven development
Product development
Software development
Design patterns
Quality assurance
Code review
Automated testing
Data management
Data storage
Data modeling
Machine Learning (ML)
Business process
Cloud architecture
Cloud computing
RDBMS
High availability
Load balancing
Disaster recovery
IT strategy
Product management
Threat modeling
Regulatory Compliance
User experience
Functional requirements
Systems architecture
Programming languages
RESTful
Relational databases
Computer science
Computer engineering
Electrical engineering
Information systems
Leadership
Agile
Health care
Design
Evaluation
Collaboration
Mentorship
Testing
Regression analysis
Data
Meta-data management
Adaptability
Warehouse
Analytics
Microservices
API
Artificial intelligence
Management
Servers
Operations
Dependability
Metrics
Reporting
IMPACT
Documentation
Java
Spring Framework
JavaScript
React.js
Storage
Kubernetes
Amazon Web Services
Messaging
Innovation
Communication

Job Details

To Apply for this Job Click Here

We have a client located in Columbus, Ohio seeking Staff Software Engineer who is a full-stack developer and technical leader proficient at designing and developing all layers of complex software applications.

This is a hybrid role, on-site 3 days/week.

JOB SUMMARY:

  • This engineer works on an agile product development team as a hands-on contributor, collaborator, and leader.
  • The Staff Engineer plays an important role on their team by leading significant initiatives, establishing team best practices, helping teammates grow as engineers, and who proposes new technology solutions which transform healthcare into a safer and more cost-effective industry.


ESSENTIAL DUTIES & RESPONSIBILITIES:

Software Development:

  • Design and implement high quality software features and components that integrate into complex software solutions.
  • Select appropriate design patterns to create maintainable, long-lived code optimized for long-term quality.
  • Lead the product team in identification and adoption of development best practices leading to software that is logically well-structured, fulfills requirements, is readable, maintainable, testable, and performant using good software craftsmanship techniques.
  • Lead sizing and complexity evaluation discussions for initiatives.
  • Facilitate effective team collaboration, guiding and mentoring peers in software quality, testing, and best practices.

Testing & Quality Assurance:

  • Define test practices for product team covering all software layers of application.
  • Define and implement QA processes such as code review and static analysis.
  • Create advanced testing strategies covering unit, system, and end-to-end tests as well as security, performance, regression, and automation testing.
  • Coach teams on advanced testing techniques such as test-driven development (TDD), behavior-driven development (BDD), and testing for positive and negative scenarios.

Data Management:

  • Devise data storage and access strategies that meet the needs of high complexity features.
  • Use knowledge of data modeling, data storage, and data transmission techniques to make appropriate design decisions.
  • Design metadata to make applications more scalable and adaptable.
  • Leverage transformational models and warehousing techniques to create unique measures and analytics.
  • Skilled in data storage solutions and integrating analytics and machine learning into business processes.

Infrastructure & Integrations:

  • Designs and implement microservices and API-based architecture using advanced understanding of cloud architecture and cloud-native design principles.
  • Advise on and pilot specialized cloud services for analytics, AI/ML, etc.
  • Expert-level management of relational and non-relational database servers.
  • Establish advanced monitoring, alerting, and logging solutions for infrastructure.
  • Design systems for high availability, load balancing, and disaster recovery.

Operations:

  • Design and create highly dependable, highly available software systems through usage of operationalization development techniques such as monitoring, logging, metrics gathering, system health, and reporting. Improve operations culture of team by defining best practices, metric radiation, and identification of operational patterns.
  • Utilize advanced techniques like blue/green deployments to minimize user impact.
  • Set technology strategy through collaboration with product management.
  • Understands business impact of operational product issues in production.

Security & Compliance:

  • Lead product team in development of software with a security-first mindset using knowledge of standard security protocols and common security risks, secure coding techniques, and appropriate usage and protection of sensitive information such as PHI.
  • Proactively design secure code, employing best practices and advanced threat modeling.
  • Complete regulatory compliance documentation and design advanced security safeguards.

Product & User Experience:

  • Lead product team in the development of features with user experience in mind.
  • Advocate for aligned user experiences and engage with UX teams when necessary.
  • Lead the implementation of reusable design patterns across products.
  • Demonstrate expertise in user-facing technologies, adapting them to fit specific design objectives.
  • Guide the team in making informed tech and design debt decisions.

Requirements & Design:

  • Collaborate with stakeholders to design appropriate systems based on business needs and technical limitations.
  • Write detailed technical stories, technical epics, define and manage tech debt.
  • Coordinate technical epics and non-functional requirements.
  • Employ industry recognized architectural patterns to create high-scale, high-reliability system designs.
  • Manage transitions in both application and system architecture.


KNOWLEDGE & REQUIREMENTS:

  • Highly motivated, self-learner, and technically inquisitive
  • High level of experience with multiple server-side programming languages (Java with Spring Boot experience preferred)
  • High level of experience with multiple client-side programming languages (JavaScript React experience preferred)
  • High level experience developing, deploying, and supporting REST services and microservices
  • Experience using cloud services for concepts such as storage and compute.
  • Capable of applying infrastructure as code practices.
  • Experience with Kubernetes and AWS preferred.
  • Experience with relational databases, non-relational databases, and messaging systems.
  • Provides a positive impact at a company level: influences cross-team initiatives, mentors teammates, drives innovation, guides projects with unclear outcomes, appropriately balances team autonomy with organizational guidance
  • Excellent track record of collaborating with stakeholders.
  • Experience proposing new product offerings. Actively contributes to company-wide strategies using industry knowledge and foresight
  • Excellent written and verbal communication skills.


EDUCATION & EXPERIENCE REQUIREMENTS:

  • Minimum years of work experience: 10+ years
  • Minimum level of education or education/experience: Bachelors or equivalent work experience in Computer Science, Computer Engineering, Electrical Engineering, Information Systems, IT.


To Apply for this Job Click Here

About Revel IT