As a Senior Software Engineer at Ascensus, you will be working in a high-energy team, writing beautiful code by using the best engineering practices in the industry today (e.g. unit testing, source control, continuous integration, automation, design patterns). Passion for all aspects of software development is critical. We are building teams that are empowered to solve the business needs by having a rapid development and deployment pipeline with a focus on automation and releasing software.
As a Scrum team contributor, you will be responsible for delivering solutions that adhere to the software architecture strategy, coding standards, and established organizational policies and procedures.
Job Responsibilities
Responsible for protecting, securing, and proper handling of all confidential data held by Ascensus to ensure against unauthorized access, improper transmission, and/or unapproved disclosure of information that could result in harm to Ascensus or our clients.
Our I-Client service philosophy and our Core Values of People Matter, Quality First and Integrity Always® should be visible in your actions on a day to day basis showing your support of our organizational culture.
Design, build, and maintain scalable and robust applications
Independently analyze, implement, test, document and maintain new and current software applications in support of achieving the business goals.
Create estimates and assist with planning throughout the software development lifecycle.
Lead or assist in technical initiatives working with multiple groups
Establish and enforce development best practices
Coach and mentor other developers, provide continuous feedback
Expect and require innovation of her/his team
Demonstrate passion and convictions and the innate ability to inspire passion in others
Assist with other tasks and projects as assigned
Job Experiences / Requirements
5-10+ years of experience developing software & systems
At least 5+ year’s hands-on experience with C#
Strong experience in .NET and C# with additional experiences on other programming languages, technologies and software platforms - JavaScript, MS-SQL Server, Sybase
Strong experience with good design principles (patterns, cohesion/coupling, S.O.L.I.D.)
Experience with Services Oriented Architecture and RESTful services development
Working knowledge of Microservices
Strong experience working with other developers, quality engineers (QE), ops engineers and support engineers to ensure smooth deployment, continual operation and passion for developing good software.
Experience with continuous integration and deployment (CI/CD)
Experience with multi-threaded applications and memory management
- Excellent problem solving and communication skills
Experience participating in design discussions with both technical and non-technical audiences.
- Experience mentoring and coaching more-junior developers
Experience documenting business solution in technical documents and diagrams
Familiarity or experience with Agile engineering practices
- Familiarity with multi-threading
Experience with writing clean and maintainable code using engineering best practices(unit testing, TDD, continuous integration and deployment, automation, design patterns, refactoring etc.)
- Good understanding of web technologies (HTTP, Apache, HTTP Proxies)
Familiarity with continuously deploying software in the Cloud