Note: The job is a remote job and is open to candidates in USA. Dice is a staffing company seeking a Senior Software Engineer to design, develop, and maintain software systems. The role involves collaborating with engineers and product managers to create efficient and reliable software solutions while mentoring peers and ensuring quality standards are met.
Responsibilities
- With a wealth of knowledge and hands-on experience, regularly mentor peers, provide help, aid in defining standards, and identify reusable code or application modules
- Create and document detailed designs for custom software applications or components
- Design, code, verify, test, document, amend and refactor moderately complex applications and software configurations for deployment in collaboration with cross-disciplinary teams across various regions worldwide
- Elicit requirements for systems and software life cycle working practices and automation. Prepare design options for the working environment of methods, procedures, techniques, tools, and people. Utilize systems and software life cycle working practices for software components and micro-services. Deploy automation to achieve well-engineered and secure outcome
- Contribute to the development of solution architectures in specific business, infrastructure or functional areas. Identify and evaluate alternative architectures and the trade-offs in cost, performance and scalability
- Cloud Deployment: Utilize AWS Cloud technologies (e.g., EC2, S3, Lambda, RDS) to deploy applications, ensuring they are scalable, secure, and robust
- Issue Resolution: Identify and resolve technical issues through root cause analysis, providing effective solutions to maintain application uptime and performance
- Quality Assurance: Participate in code reviews, unit testing, and integration testing to ensure adherence to quality standards and best practices
- Work within a matrix organizational structure, reporting to both the functional manager and the Product manager
- Participate in Product planning, execution, and delivery, ensuring alignment with both functional and Product goals
Skills
- Bachelors' degree in Information Technology, Computer Science or any Technology stream
- 7+ years of hands-on experience working with technologies - HTML, CSS, REST API, HTTP, SQL and databases, at least one programming language from our supported stack (TypeScript / Node / React, Java, Python, .NET)
- Working with DevSecOps tools for deploying and versioning code
- Familiarity with modern product development practices Agile, Scrum, test driven development, UX, design thinking
- Familiarity with DevOps practices (Git, Docker, infrastructure as code, observability, continuous integration/continuous deployment - CI/CD)
- Capability to quickly learn modern technologies and adapt to evolving project requirements
- Cloud-native, ideally AWS certified
- Proficiency in Python programming language
- Proficiency in authentication and authorization protocols (OAuth, JWT, SAML)
- Proficiency with JSON, XML, XSLT, OData, REST, and SOA
- Strong understanding of REST API design and implementation
- Proficiency with DataBricks, DBT, and AirFlow
- Good interpersonal and communication skills (verbal and written)
- Strong analytical and problem-solving skills
- Product and customer-centric approach
- Experience with other programming languages (Java, TypeScript, .NET)
Company Overview