个 人 简 历
求职意向: 软件开发
个人概况:
姓名: 石庆勇 性别: 男
出生年月: 1986.10.17 健康状况: 良好
年龄: 22岁 学历: 大专
毕业院校:新余高等专科学校 专业: 软件技术
工作年限: 1年 工作地点:不限
联系方式:
Email: mywork0508@163.com Tel: 13979086304
Msn: myline@live.cn
教育背景:
2002年8月----2005年6月 林州五中
2005年8月----2008年6月 新余高等专科学校 软件技术专业
大学选修专业(应用心理学,市场营销)
工作经验:
2007年8,9月: 上扬科技(新余)公司 岗前培训
2007年10月—至今:上扬科技(新余)公司 E2部门 软件开发工作
项目名称:E2平台(一个企业平台:用来集成其他系统,基础的执行系统)
开发环境:Visual Studio2005,SQL Server 20005,IIS7.0,Windows Vista
项目描述:
C/S架构
SmartClient+IIS/WCF+BO+CSLA+SQL Server
采用三层结构(即表现层/业务层/数据层)
责任描述:
1.根据设计文档,编写业务逻辑代码,并进行单元测试
2.填写测试用例和测试报告文档
3.根据需求,对新的功能或新的技术进行测试,测试成功后,加到原有的项目上去
4.参与过UI设计和需求文档设计
进行项目开发时用到的技术:
WPF, WCF,Linq,Web Service,IIS7.0
Xml, Xsd, Xslt
Enterprise Library 3.1
Team Foundation Server
asp.net(毕业设计)---人事资源管理系统
熟悉Visual studio2005及.Net3.0平台,熟悉C#
了解CSLA.NET,熟悉ProjectTrackercs
重构和单元测试(VS自带的)
会编写简单的存储过程并测试(公司有一个部门专门写存储过程的)
英语水平: 一般,能阅读英文技术文档。
业余爱好: 读书,散步,聊天
自我评价:
热爱工作,喜欢独立思考;
善于时间管理,乐于交流讨论;
积极进取,有意识地培养自己的工作习惯;
有很好的需求理解和团队协作能力。
工作感想:
需求理解:
不明白---讨论,交流;
按照设计文档进行编码;
待编码结束后,检查是否有遗漏。
编 码:
规范化进行(C#编码规范 或 公司会提供的)
测 试:
跟踪,定位,分析
Error:
不怕,认真+努力+求助--------(有些是细节问题),模仿,参考;
问题本身分析和环境分析;
技术框架分析(有些是前后不一致,不完整造成的)。
文档化:
将那些重要的,用过的,熟悉的技术加以整理;
最好可以写成例子。
注 释:
便于阅读和维护
个人因素:
虚心学习+热情+信念
工作理念:
做好本职工作,资源共享。
学习的东西只有应用了才有价值。
思路要清晰,知道自己在做什么。
做一个善于学习的人,这比什么都重要!
工作继续,生活继续。
相信您的信任与我的实力将为我们带来共同的成功! 或希望我能为贵公司贡献自己的力量!
“已在用人单位连续工作满十年”或“连续订立二次固定期限劳动合同”条件的员工,可与用人单位签订“无固定期限劳动合同”的条文。
人才的形成是靠一种长期稳定的劳动关系竞争得来的,而签订无固定期限劳动合同是形成长期稳定劳动关系的唯一途径。”
实际上,不少大企业已经开始关注竞争机制的建立问题。竞聘上岗的制度也逐渐开始实施。只要满足工作年限、学历、专业技术等条件的要求,十几个员工可以同时竞聘一个岗位。一句话,如何保持员工的责任感、提高工作热情、促进能力转型,是企业管理者必须解开的困局。
据记者了解,不少IT企业的HR都表示,在学习了新法之后,很担心自己需要的人才留不住,而不想留下的员工又赖着不走。为了尽量避免这种情况的发生,HR会更倾向于招聘已经有类似工作经验的人才,甚至是返聘已经退休的人员,而对应届毕业的大学生,态度则谨慎,需要增加多轮面试、笔试,全面考察。
行业高级职业顾问对记者说,其实,正因为企业在人才结构上会进行合理配置,高素质的人才对他们来说才更显得弥足珍贵。因此,从长远来说,作为高素质人才的大学生们,将获得更多的就业机会,而不会因为这部法律造成大学生就业机会的减少。
但是,如何在众多的竞争者中脱颖而出,如何打消企业HR“请神容易送神难”的顾虑,则是大学生们需要更多思考的。我们一直在强调,大学生在应聘前要提高大自己的职业素质、经验和技能。在新法施行后,这些更会成为能否找到工作的决定性因素。
《劳动合同法》必读之毕业生版
劳务派遣单位需要与被派遣劳动者订立二年以上的固定期限劳动合同。此外,被派遣劳动者享有与用工单位劳动者同工同酬的权利。
1. 新法规定:用人单位招用劳动者时,应当如实告知劳动者工作内容、工作条件、工作地点、职业危害、安全生产状况、劳动报酬,以及劳动者要求了解的其他情况。这些内容是法定的并且无条件的,无论劳动者是否提出知悉要求,用人单位都应当主动将上述情况如实向劳动者说明。
除此以外,对于劳动者要求了解的其他情况,如用人单位相关的规章制度,包括用人单位内部的各种劳动纪律、规定、考勤制度、休假制度、请假制度、处罚制度以及企业内已经签订的集体合同等,用人单位都应当进行详细的说明。相反,劳动者的告知义务是附条件的,只有在用人单位要求了解劳动者与劳动合同直接相关的基本情况时,劳动者才有如实说明的义务。
2.新法增加了一些更加有利于保护应届毕业生利益的条款,比如说几乎每位毕业生都会遇到的有关试用期的条款:
劳动合同期限3个月以上不满一年的,试用期不得超 过一个月;劳动合同期限一年以上不满3年的,试用期不得超过2个月;
3年以上固定期限和无固定期限的劳动合 同,试用期不得超过6个月。
劳动者在试用期的工资不得低于本单位相同岗位最低档工资或者劳动合同约定工资的80%,并不得低于用人单位所在地的最低工资标准。
这些规定意味着,今后用人单位不能再滥用试用期、使用应届毕业生这样的廉价劳动力了。
3.目前仍有不少企业不为员工参保,或要求职工自己上保险。今后,若企业不为员工参加保险,员工可随时单方面解除合同;企业不仅应为员工补齐保险,
还要按复利交纳每天千分之二的滞纳金。他说,据此计算,若一年未给员工上保险,滞纳金将是应交纳保险金的2.98倍。
另外,毕业生在选择用人单位时,一定要看这个单位的医疗保险是“几险合一”,因为全国各地是不一样的。像上海已经实施了“五险合一”,
而西部只有“两险”或“三险”。
4.新法第十条规定,建立劳动关系后,1个月之内必须签约,3个月到1年之内未签约的,赔偿双倍工资;
超过一年不签约的,自动视为与劳动者签订无固定期限劳动合同。
5.违约金一向是用人单位绑住劳动者的“紧箍咒”,但新法规定,如果毕业生与企业签订的是三方协议中的违约金,承诺到该单位报道,后来却没有去,
因为违约的话,违约金金额不得超过毕业生的第一个月的工资;
如果签订的是单位培训,或保密协议和竞业限制的违约金协议,则只需向单位支付与培训费用金额相当的违约金,并且单位必须出具第三方开的培训费用发票
才能证明对劳动者进行过培训,企业内部培训或没有第三方发票的都不算。
《劳动合同法》施行后的三大猜想
1.HR职业要火了!新法将会提高企业使用劳动力的成本和门槛,但这也间接地促使企业进行调整升级,这个过程需要大量高素质的HR.
2.求职者更青睐去IT外企。由于IT外企本身在人力资源管理方面就比较规范,将比国企和民营企业更快适应新法。调整后的IT外企会更吸引求职者。
3.IT企业作为人力资源密集型企业,随着人力成本和采购成本,社会成本的增加,2008年将是IT企业的洗牌年。部分产品会涨价保本,部分小的IT企业将被淘汰。
IT人才将由短缺变为过剩,出现大量失业。
Xsd
XML结构定义 ( XML Schemas Definition )
XML Schema 是DTD的替代品。XML Schema语言也就是XSD。
XML Schema描述了XML文档的结构。可以用一个指定的XML Schema来验证某个XML文档,以检查该XML文档是否符合其要求。
文档设计者可以通过XML Schema指定一个XML文档所允许的 结构和内容,并可据此检查一个XML文档是否是有效的。XML Schema本身是一个XML文档,它符合XML语法结构。
可以用通用的XML解析器解析它。
一个XML Schema会定义:文档中出现的元素、文档中出现的属性、子元素、子元素的数量、子元素的顺序、元素是否为空、元素和属性的数据类型、元素或属性的默认和固定值。
XSD文件的后缀名为.xsd。
在下面的代码示例中,上面的架构添加到 XmlReaderSettings 对象的 XmlSchemaSetSchemas 属性中。 XmlReaderSettings 对象作为参数传递给验证上述 XML 文档的 XmlReader 对象的 Create 方法。
XmlReaderSettings 对象的 ValidationType 属性设置为 Schema,强制通过 XmlReader 对象的 Create 方法验证 XML 文档。将 ValidationEventHandler 添加到 XmlReaderSettings 对象以处理 XML 文档和架构验证过程中发现的错误所引发的任何 Warning 或 Error 事件。
下面是一个例子:
using System;
using System.Xml;
using System.Xml.Schema;
using System.IO;
using System.Xml.Serialization;
using System.Text;
public class XmlSchemaSetExample
{
static void Main()
{
XmlReaderSettings booksSettings = new XmlReaderSettings();
booksSettings.Schemas.Add("http://www.contoso.com/books", "contosoBooks.xsd");
booksSettings.ValidationType = ValidationType.Schema;
booksSettings.ValidationEventHandler += new ValidationEventHandler(booksSettingsValidationEventHandler);
MemoryStream ms = new MemoryStream();//定义一个数据流对象
XmlDocument doc = new XmlDocument();
doc.Load("contosoBooks.xml");
doc.Save(ms);
ms.Position = 0; //修改指针的位置
XmlReader books = XmlReader.Create(ms,booksSettings);
while (books.Read())
{ }
}
static void booksSettingsValidationEventHandler(object sender, ValidationEventArgs e)
{
if (e.Severity == XmlSeverityType.Warning)
{
Console.Write("WARNING: ");
Console.WriteLine(e.Message);
Console.Read();
}
else if (e.Severity == XmlSeverityType.Error)
{
Console.Write("ERROR: ");
Console.WriteLine(e.Message);
Console.Read();
}
}
}
contosoBooks.xsd
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.contoso.com/books" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="bookstore">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="book">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="author">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="name" type="xs:string" />
<xs:element minOccurs="0" name="first-name" type="xs:string" />
<xs:element minOccurs="0" name="last-name" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="price" type="xs:decimal" />
</xs:sequence>
<xs:attribute name="genre" type="xs:string" use="required" />
<xs:attribute name="publicationdate" type="xs:date" use="required" />
<xs:attribute name="ISBN" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
contosoBooks.xml
<?xml version="1.0" encoding="utf-8" ?>
<bookstore xmlns="http://www.contoso.com/books">
<book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
备注:关于Xsd的其他的一些类或者实例
StreamWriter ,StreamReader,XmlSchema,XmlSchemaSet
Stream stream = new MemoryStream(); //当一个类的对象无法初始化时,可以考虑用它的继承类。
FileStream fs = File.Open("117.xml",FileMode.OpenOrCreate,FileAccess.ReadWrite);
TextReader tr1=new StreamReader("123.xml");
TextReader tr2= new StringReader("asdfsadfsdf");
string objectguid = "ca4a781c-8052-44c8-bcef-e96f7fd2c8db";
private void Form1_Load(object sender, EventArgs e)
{
string strCon = "server=localhost\\SQLExpress;database=E2;Integrated Security=true";
SqlConnection conn = new SqlConnection(strCon);
SqlDataAdapter da = new SqlDataAdapter("select ObjectGuid, ParentGuid, InternalID, ID, CompositeKey, Name
from SystemNamespace ORDER BY CompositeKey ASC", conn);
DataSet ds = new DataSet();
da.Fill(ds, "SystemNamespace");
dataGridView1.DataSource = ds.Tables["SystemNamespace"];
for (int i = 0; i < ds.Tables["SystemNamespace"].Rows.Count; i++)
{
if (ds.Tables["SystemNamespace"].Rows[i]["ObjectGuid"].ToString() == objectguid)
{
s += "<" + ds.Tables["SystemNamespace"].Rows[i]["ID"].ToString() + ">" + " ";
s += changetotree(objectguid);
s += "</" + ds.Tables["SystemNamespace"].Rows[i]["ID"].ToString() + ">" + " ";
}
}
}
string changetotree(string obj)
{
string xmlstr = string.Empty;
string strCon = "server=localhost\\SQLExpress;database=E2;Integrated Security=true";
SqlConnection conn = new SqlConnection(strCon);
SqlDataAdapter da = new SqlDataAdapter("select ObjectGuid, ParentGuid, InternalID, ID, CompositeKey, Name
from SystemNamespace ORDER BY CompositeKey ASC", conn);
DataSet ds = new DataSet();
da.Fill(ds, "SystemNamespace");
for (int i = 0; i < ds.Tables["SystemNamespace"].Rows.Count; i++)
{
if (ds.Tables["SystemNamespace"].Rows[i]["ParentGuid"].ToString() == obj)
{
xmlstr += "<" + ds.Tables["SystemNamespace"].Rows[i]["ID"].ToString() + ">" + " ";
xmlstr += changetotree(ds.Tables["SystemNamespace"].Rows[i]["ObjectGuid"].ToString());
xmlstr += "</" + ds.Tables["SystemNamespace"].Rows[i]["ID"].ToString() + ">" + " ";
}
}
return xmlstr;
}
//先把自己输出,再看有没有孩子,如果有孩子则把所有的孩子输出,否则,把自己关闭-------------很典型的递归应用
using System.Windows.Threading;
Timer cachingTimer = new Timer();//定义变量
public void OnLoad(object sender, RoutedEventArgs e)
{
cachingTimer.Elapsed += new ElapsedEventHandler(onTimedEvent);
cachingTimer.Interval = 50000;//50秒
cachingTimer.Enabled = true;
}
private void onTimedEvent(object sender, ElapsedEventArgs e)//事件
{
Dispatcher.Invoke(DispatcherPriority.Normal, new updateUi(change_click));
}
private void change_click()//方法
{
NamespaceCaching.CachingE2LanguageType();//被周期调用的方法
}

