Ivan Sedlak
Verified Expert in Engineering
Security Developer
Ivan拥有超过12年的专业实践经验,使用了广泛的微软技术, 主要针对企业web应用, security, internet, 无服务器功能. 他以前的职位是在一家私营公司做高级职员 .. NET全栈开发人员、软件架构师和团队负责人. 他主要从事大型项目. Ivan自2015年以来一直与Toptal客户合作.
Portfolio
Experience
Availability
首选的环境
Azure, SQL Server Management Studio, Visual Studio, Windows 10, Node.js, Visual Studio Code (VS Code), Zsh, Bash
The most amazing...
...我编写的是一个无服务器的纳米和微服务堆栈,它可以快速扩展到传入请求的风暴.
Work Experience
Head of Engineering
欧洲金融科技创业公司(数据来源:Toptal)
- 接管遗留项目进行审查,并向客户提供关于当前状态的反馈,以及可以做些什么来改进它.
- 设计并实现了基于Azure持久函数的全新无服务器架构,以及Azure上的数据存储和其他相关基础设施.
- 构建了更容易和更快的请求捕获工具, analysis, 在实时环境中,一旦请求开始大量出现,就对其进行调试和重播,因为无法再手动完成.
- 帮助团队成员做出架构决策, 实现决策, 以及实现本身, 与业务和技术方面进行沟通.
领导和高级软件工程师
纽约主要电信公司(通过Toptal)
- 创建具有高度优化吞吐量的web API端点,以支持向上和向外扩展.
- 优化现有代码库.
- 使用Redis集群对现有代码库引入分布式缓存.
- 引入了Dapper轻量级ORM来手动优化繁重的SQL查询.
- 对包和/或框架版本进行了一般的错误修复和版本更新.
Security Lead
纽约主要电信公司(通过Toptal)
- 为SSO设计并实现了内部身份验证端点.
- 在其核心使用IdentityServer3实现身份验证,并使其与OpenID Connect兼容, OAuth2, SAML2, WS-Federation, and more.
- 根据子域(部门)构建适合业务需求的自定义解决方案以及不同的身份验证流, 2FA, 现有用户从遗留存储迁移到ASP.. NET Identity用户存储、用户存储的管理UI和IdentityServer3.
- 开发用于密码恢复的自定义流, 将外部提供者的用户链接到内部用户和用户锁定.
- 使用动态中间件注册实现同一部署应用程序在不同服务器(域)上的不同行为,以控制身份验证流.
.NET Web Developer
InnoSoft加拿大有限公司. (via Toptal)
- 构建数据库表、关系图和存储过程.
- 创建复杂的SQL存储过程来实现高级调度算法.
- Built CSLA.. NET业务对象用于ORM(对象-关系映射).
- 解决了OWIN中间件实现中的安全漏洞.
- 创建了web API控制器和动作方法.
- 实现了Ajax调用,从Web API控制器获取数据,并在适当的局部视图中利用数据.
- 创建了一个视图,以基于数据呈现SVG矢量图像,并能够将其下载为具有透明背景(用于打印)或具有自定义颜色背景的PNG.
.NET Security Expert
focus apps(通过Toptal)
- 构建标准化安全模型的后端库.
- 使用OWIN中间件实现和设计支持多个身份提供者的代码.
- 设计一个自定义的变化感知延迟加载缓存解决方案.
- 创建了应用程序和底层数据库审计解决方案.
- 为其他开发人员建立了可以遵循的标准,使解决方案更容易开发和维护,也更安全.
Senior .. NET开发人员|项目负责人|团队经理|软件架构师
Chinook Software
- 为身份验证、缓存、审计和消息传递创建了自定义可重用代码库.
- 为在线信用卡处理构建了自定义Moneris API包装器.
- 开发和实施定制购物车解决方案.
- 编程各种功能与先进的自定义功能的复合C1 CMS.
- 为数据转换、导入和同步编写复杂的SQL Server Agent作业.
Oracle Developer
InterSoft
- 基于BRD设计ER图.
- 使用Java将Oracle表单从桌面迁移到浏览器内应用程序.
- 维护和支持现有的Oracle DB实例.
- 从遗留数据格式导入数据到新的Oracle DB实例.
- 到现场并获得解决问题和实施偏远地区解决方案的现场经验.
Experience
.NET安全库
一些支持的提供商是Azure AD、自定义SAML idp、ASP.. NET身份登录,以及Facebook. 我还设计并实现了一个定制的变化感知延迟加载缓存解决方案, application, 以及低级数据库审计解决方案, various helpers, and base classes.
该库为其他开发人员设置了一个标准,使他们的工作更容易,因为他们可以只使用公开的方法和属性, 这使得他们的代码更容易开发和维护,用一行解决方案来获取当前用户属性, set claims, authenticate, access cached data, register a new user, 授权用户访问资源, etc.
我在这个项目中度过了一段美好的时光,因为我喜欢设计后端库和标准,使开发人员的工作更轻松,解决方案更易于维护和安全.
.NET Web Development
在那之后,我开始与CSLA合作.NET创建用于ORM的业务对象,并制作Web api以将该数据公开给特定的安全角色集.
我还帮助前端开发人员使用AJAX调用来利用公开的数据.
我做过的最复杂的事情是高级调度程序,它考虑了很多不同的事情来确定可用的地点和时间,并根据选择的算法进行调度, 创建游戏和分配团队. 这是在纯T-SQL中完成的,以使其尽可能接近数据库,以避免在CSLA中获取和写入数据时做大量的管道工作.. NET框架(避免创建大量业务对象). 调度工作速度快,并且内置了验证和数据损坏预防功能, 甚至是只读模式(事务不持久化).
我和客户相处得很愉快. 工作组织得很好,使用了JIRA、每日Scrum和故事梳理会议. 这是我参与过的最大的解决方案,也是目前为止我写过的最复杂的T-SQL代码.
由微服务和纳米服务构建的Web API
授权和路由使用APIM(类固醇反向代理)处理。. 数据保存在SQL和NoSQL数据存储中,具体取决于用例. 快速扩展能力, 良好的解决方案设计, 整体系统稳定性处理了实时流量中的所有峰值,而不会增加故障率.
Skills
Languages
t - sql (transact - sql), c#, HTML5, SAML, VB.. NET, CSS3, XHTML, JavaScript, Bash, c#.NET
Frameworks
Entity 6, ASP.NET Identity, ASP.NET, ASP.NET Web API, .NET, ASP.NET MVC, OAuth 2, .. NET Core, IdentityServer 4, IdentityServer 3, Swagger, Bootstrap, CSLA, Razor, AngularJS
Libraries/APIs
LINQ,实体框架,Web API, OpenID, jQuery, Node.js
Tools
Visual Studio .. NET、Postman、Hangfire、Fiddler、Jira、TFS、Git、Dapper、Visual Studio、Oracle Forms、Zsh
Paradigms
对象关系映射(ORM), 依赖注入, 敏捷软件开发, DRY, Scrum, Serverless架构, On-demand Scaling
Platforms
Android, Windows, Azure Functions, Azure, NLog, Azure PaaS, Azure IaaS, Docker, Oracle, Visual Studio Code (VS Code)
Storage
SQL Server Management Studio, Microsoft SQL Server, JSON, Redis Cache, DB, Redis, Elasticsearch
Other
Algorithms, Ajax, Architecture, Caching, Security Audits, Security, Data Structures, OWIN, Identity Server, CORS, OpenID Connect (OIDC), Optimization, SVG, Windows 10, Kentor, Payment Gateways, APIs
Education
信息技术学士学位
ITS -信息技术学校-贝尔格莱德