Senior Software Engineer
Apply on
Availability Status
This job is expected to be in high demand and may close soon. We’ll remove this job ad once it's closed.
Job Title: Senior Software Engineer
<>Purpose:</>The Senior Software Engineer is responsible for complex analysis, design, development, testing, and debugging of computer software, ranging from operating system architecture integration to software design. This includes creating critical and complex application programs, working with stakeholders to define system scope and objectives, and establishing project baselines, standards, and processes. The role involves breaking down software requirements into highly complex systems, ensuring their successful implementation.
<>Key Responsibilities:</>Software Development & Design
- Design, code, and test complex applications, serving as a subject matter expert for both internal and customer-facing discussions.
- Analyze and develop interface design documentation while adhering to hardware and software system standards.
- Deliver scalable systems designed for large user bases, ensuring code quality, migration, and DevOps compliance.
Software Analysis & Testing
- Perform detailed software analysis, including the development of use cases and technical specifications.
- Implement source code based on design specifications and develop automated unit tests and structured test cases.
- Compile and report data from software testing, ensuring accurate and actionable insights.
Enterprise Solutions & Maintenance
- Develop and implement software solutions for enterprise environments, addressing both functional and non-functional requirements (e.g., performance, availability).
- Maintain existing systems by identifying areas for improvement and streamlining processes.
- Work with front-end and back-end programming and integration frameworks and tools, while assisting in feature development estimates.
Technical Support & Mentorship
- Provide direct technical support for high-priority trouble calls and collaborate with cross-functional teams to ensure reliable, scalable software solutions.
- Recommend new technologies and integrate them into existing systems.
- Participate in product scoping, architecture discussions, and roadmap planning.
- Mentor junior software engineers and continuously evaluate emerging technologies to identify new opportunities and best practices.
Education:
- Bachelor s degree in Information Technology, Computer Science, or a related field.
- In lieu of a Bachelor s degree, 4 additional years of relevant experience are required.
Experience:
- 5+ years of software development experience, including software architecture, design, coding, compilation, user requirements definition, and software specification development.
- Experience with Java, Spring, Spring Integration, Web Services, JMS, and MQ is required.
- Strong experience in AWS development, with a focus on Event Bridge architecture, Lambda, and EKS.
- Preferred familiarity with CloudWatch, X-Ray, and DataDog.
- Advanced knowledge of software development life cycle (SDLC), agile methodologies, and CI/CD pipelines.
- Expertise in cloud technologies (AWS, Azure) and database technologies (SQL, Oracle, MongoDB, PostgreSQL).
- Proficiency in programming languages such as JavaScript, C, and Python.
- Strong knowledge of code quality and promotion practices.
- Experience with TDD (Test-Driven Development) and BDD (Behavior-Driven Development).
- Excellent communication skills, both written and verbal, with the ability to convey technical requirements to all levels of expertise.
- Ability to work effectively in a fast-paced, dynamic environment with frequently changing priorities and deadlines.