|
The Senior Software Engineer is responsible for designing, developing, and testing software systems or applications for software enhancements and new products, including cloud-based or internet-related tools for internal consumption. The incumbent will provide technical solutions to enable the company to meet its strategic objectives through effective collaboration with business analysts, quality assurance testers, and project managers. The incumbent will collaborate with others to ensure successful teamwork, effective development, and delivery of high-quality software solutions.
- Support software planning cycles and provide feedback on product / project estimates
- Analyze business requirements and create technical specifications to implement the requirements
- Design software, applications and database enhancements or new products in alignment with
business requirements and technical specifications defined - Develop, build and test software systems or applications to meet business requirements
- Write high-quality, maintainable, and scalable code in various programming languages
- Conduct bug fixes to identify and remediate defects in software solutions
- Create and maintain technical documentation including code comments, design documents, and user manuals
- Collaborate with business analysts, quality assurance testers, and project managers to ensure that
software solutions meet business requirements - Provide technical support to end-users to ensure proper use of software solutions
This position is not eligible for sponsorship for work authorization now or in the future, including conversion to H1-B visa. Job duties include contact with other employees and access confidential and proprietary information and/or other items of value, and such access may be supervised or unsupervised. The Company therefore has determined that a review of criminal history is necessary to protect the business and its operations and reputation and is necessary to protect the safety of the Company's staff, employees, and business relationships. Minimum Requirements
- Must be at least 18 years of age
- Must be legally authorized to work in the country of employment without needing sponsorship for employment work visa status now or in the future
Education Required
- Bachelor's degree or higher in Information Technology (e.g. Computer Science, Technology Management, Software Engineering, Application Development, Web Development and Design, etc.), or in lieu of a degree, at least 7 years of experience in software development
Preferred
Knowledge and Experience Required
- 4-6+ years of experience in software development in the software development industry
- In-depth knowledge of software development life cycle (SDLC) methodologies and best practices
- In-depth knowledge of software development tools, platforms and languages
- Experience in developing, integrating, testing and deploying cloud-based software solutions or internet-related tools
- Knowledge of relational databases and SQL
- Excellent written and verbal communication skills
- Experience in developing Microservices and in-depth knowledge of various Integration patterns
Preferred
- 4+ years of hands-on experience with the Microsoft Azure platform, including Azure integration Technologies
- 4+ years of experience in Cloud-Native Development, encompassing:
- Microservices architecture
- Containerization technologies (e.g., Docker, Kubernetes)
- DevOps practices and tools
- Proven experience in Full Stack Development, including both frontend and backend technologies
- Strong background in application development using open-source Java frameworks, such as Spring Boot
- Exposure to Azure Networking, including configuration and troubleshooting
- Experience with GitHub Actions for CI/CD pipeline automation
- Exposure to Artificial Intelligence (AI) concepts and hands-on experience with AI implementation is considered a strong plus
- Possession of at least one of the following certifications:
- Terraform Certification
- Microsoft Certified: Azure Administrator Associate (AZ-104)
- Microsoft Azure Fundamentals
Technical Skills
- Database Management Systems
- Programming Languages
- Code Prompt Engineering
- Cloud Technologies & Platforms
- Software Development Lifecycle (SDLC) Methodology
- Continuous Integration and Continuous Deployment (CI/CD)
- Project Management Methodology
- Front-End Coding Languages
- Web Services & APIs
- Systems Integration
- Source Control Systems
- Build Tools and Compilers
- Software Testing & Quality Assurance Methodologies & Tools
- Automated Testing Tools
- Solution Architecture Patterns
- Containerization
|