Senior Software Engineer
Role details
Job location
Tech stack
Job description
-
Work on functional lines with individuals assigned in new program development and/or maintenance of Cloud, server and/or distributed computing systems.
-
Will mentor junior developers provide technical assistance as needed, perform code reviews, work directly on complex applications and technical problem identification and resolution.
-
Will work on infrastructure components that may be used by one or more applications or systems and focused around delivering business value features.
-
Will create program and operations documentation in a casual, flexible environment.
-
May collaborate with business and internal customers to guide development, debugging, and testing for application software accuracy and completeness.
-
Work independently to develop new functionality and applications on cross-functional Agile project teams.
-
Perform integrated testing and customer acceptance testing of components to ensure timely, quality results.
Requirements
-
A qualified candidate will possess the ability to work independently, design, develop, test and deploy software applications., + Software Development Life Cycle: Knowledge of software development life cycle; ability to use a structured methodology for delivering and managing new or enhanced software products to the marketplace.
-
Software Integration Engineering : Knowledge of software integration processes and functions; ability to design, develop and maintain interfaces and linkage to alternative platforms and software packages.
-
Effective Communications: Understanding of effective communication concepts, tools and techniques; ability to effectively transmit, receive, and accurately interpret ideas, information, and needs through the application of appropriate communication behaviors.
-
Decision Making and Critical Thinking: Knowledge of the decision-making process and associated tools and techniques; ability to accurately analyze situations and reach productive decisions based on informed judgment
Consideration for Top Candidates:
-
Bachelor's degree in Computer Science, Software Engineering, Information Technology, or related field.
-
Proven experience designing scalable architecture systems for Java-based applications.
-
Strong experience in Spring Boot framework for building scalable, maintainable applications.
-
Deep expertise in object-oriented design, design patterns, and software architecture.
-
Proven experience architecting and deploying solutions on AWS or Azure cloud platforms.
-
Experience with databases (SQL) and Object-Relational Mapping (ORM) tools such as Hibernate, JPA, or Spring Data.
-
Experience with writing complex SQL queries and creating stored procedures and functions
-
Familiarity with Snowflake data warehouse technology
-
Proficiency in concurrency and multi-threading in Java, with the ability to design and implement thread-safe, high-performance applications.
-
Design, develop, and deploy robust and scalable AI and machine learning (ML) models and algorithms into production environments.
-
Strong knowledge of software integration, data exchange interfaces, and API design and creation.
-
Experience with agile development methodologies and tools.
-
Proficiency in automated testing (Playwright), CI/CD pipelines, and DevOps practices.
-
Experience in mentoring software engineering teams.
Additional Skills:
-
Experience with microservices architecture and containerization (Docker, Kubernetes).
-
Familiarity with modern front-end frameworks or mobile development is a plus, (i.e. React, Angular , etc.)
-
Certifications in AWS, Azure, or relevant cloud technologies.
-
Experience with commercial database systems and web-based software design.
Benefits & conditions
Subject to plan eligibility, terms, and guidelines. This is a summary list of benefits.
-
Medical, dental, and vision benefits*
-
Paid time off plan (Vacation, Holidays, Volunteer, etc.)*
-
401(k) savings plans*