What are the responsibilities and job description for the Senior Software Engineer - e-automate position at ECI Software Solutions Career?
We are seeking a Senior Software Engineer with strong development and communication skills to help provide best-in-class value to our customers.
We are seeking a Senior Software Engineer who wants to improve their skills while contributing to our cloud platforms and supporting services. You will be designing, coding, testing, and maintaining software that helps our customers and internal teams thrive. You will be working with talented developers on small teams and have the opportunity to mentor, collaborate with, and share your skills and knowledge.
This position is hybrid, based out of our office in Provo, UT at 4626 N 300 W, Ste. 200, Provo, Utah 84604 or can be remote for the right candidate.
Qualifications:
Required
Traditional Software Development
At least 12 years of full-stack software development experience.
Has a good understanding of developing multi-tenant web applications and backend services.
Has experience with designing solutions for high scalability and resilience.
Cloud Practices
Has a good understanding of designing and implementing cloud solutions across multiple platforms (AWS, Azure, Google Cloud, etc.).
Has awareness of cloud architecture best practices, security principles, and networking concepts.
Has awareness of developing for the cloud using native cloud services to enable both Software-as-a-Service (SaaS) as well as cloud hosted applications in an Infrastructure-as-a-Service (IaaS) environment.
Development Process
Have a good understanding of using software development tools like JIRA, Git, Lint, Visual Studio, Postman / Insomnia, Swagger/SwaggerHub etc.
Have a good understanding of CI/CD pipelines and tools like Jenkins / Azure DevOps Pipelines / GitHub Actions, and package management frameworks like NuGet.
Has good understanding of various testing frameworks applicable to API testing, unit testing frameworks and mocking libraries.
Good knowledge of database development, profiling, tuning and optimizations for highly scalable data flows.
Domain Practices
Good understanding of secure coding practices.
Good understanding of developing solutions for high availability.
Good understanding of monitoring, observability and telemetry.
Good understanding of developing APIs in REST documenting APIs and Developing SDKs.
Good understanding of Design Patterns and Software Architecture.
Excellent problem-solving skills and ability to troubleshoot complex issues.
Is a quick learner and adapts well in a fast-paced environment.
Preferred
Have experience with high-scale data gathering and processing solution
Have experience developing in cloud environments like AWS and / or Microsoft Azure.
Have a background in developing highly scalable software solutions and / or distributed network solutions.
Have familiarity with refactoring monoliths.
Have either the experience or quickly adapt to work with the Microsoft stack.
Responsibilities:
You will contribute to all portions of the Software Development Life Cycle (SDLC)
You will use opportunities provided to you to develop and expand your skills and technical knowledge.
You will use your creativity and work ethic to meet or exceed performance goals.
You will embrace change and influence change at all levels within the organization.
You understand the power of retrospectives and feedback loops and are constantly using these techniques to suggest and influence change.
You will coach and mentor junior developers to embrace best practices and subject matter expertise.
You will promote knowledge sharing and help peers and other members of the team to get up to speed quickly.
You will proactively participate in technical and process initiatives at division and corporate levels.
You will participate in conversations with customers to understand and resolve customer issues.
You will assume a technical leadership role for one or more applications and take full ownership of the applications, APIs and SDKs being developed.
You will actively participate in software estimation exercises.
You will lead design sessions and participate in requirements refinement activities.
You will implement proof-of-concept / prototypes and bring them to completion as an individual or with the help of other members of the team.
You will actively participate in code reviews and provide proactive feedback.
Success Criteria:
You will be constantly looking at the long-term goals to ensure current solutions work to achieve those goals.
You will be an enthusiastic, professional contributor to the team with a can-do attitude.
You will work collaboratively to meet deadlines.
You will embrace the company’s core values.
You will complete projects with a combination of self-directed work, collaboration, and teamwork.
You will be well organized and eager to be part of a dynamic team.
This is a great opportunity to join and contribute to a growing, global software company. Intellectual curiosity, creativity, attention to detail, research skills, and the desire to learn will provide you with a unique opportunity at a great company.
Senior .NET Software Engineer
Aristotle -
Provo, UT
Senior Software Engineer, Fold3
14 iArchives, Inc. -
Lehi, UT
Senior Software Engineer
Neighbor -
Lehi, UT